arkaos 4.22.0 → 4.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/THE-ARKAOS-GUIDE.md +72 -0
- package/VERSION +1 -1
- package/arka/SKILL.md +29 -7
- package/arka/skills/bootstrap-agent/SKILL.md +3 -2
- package/arka/skills/conclave/SKILL.md +11 -0
- package/arka/skills/flow/SKILL.md +3 -2
- package/arka/skills/forge/SKILL.md +3 -2
- package/arka/skills/recipes/SKILL.md +3 -2
- package/arka/skills/refine/SKILL.md +3 -2
- package/arka/skills/research/SKILL.md +3 -2
- package/bin/arka-doctor +8 -0
- package/core/cognition/insights/store.py +15 -4
- package/core/forge/persistence.py +27 -9
- package/core/forge/schema.py +45 -22
- package/core/governance/evidence_checks.py +101 -9
- package/core/governance/kb_cite_check.py +16 -6
- package/core/governance/stop_lint.py +38 -11
- package/core/governance/stop_lint_telemetry.py +11 -2
- package/core/hooks/user_prompt_submit.py +21 -23
- package/core/synapse/engine.py +46 -16
- package/core/synapse/graph_context_layer.py +7 -2
- package/core/synapse/kb_cache.py +63 -16
- package/core/synapse/layers.py +93 -30
- package/core/synapse/layers_base.py +16 -0
- package/core/synapse/layers_kb.py +325 -19
- package/dashboard/app/layouts/default.vue +7 -0
- package/dashboard/app/pages/plan-canvas.vue +630 -0
- package/departments/brand/SKILL.md +3 -2
- package/departments/brand/skills/archetype-finder/SKILL.md +3 -2
- package/departments/brand/skills/colors/SKILL.md +3 -2
- package/departments/brand/skills/design-system/SKILL.md +3 -2
- package/departments/brand/skills/identity-system/SKILL.md +3 -2
- package/departments/brand/skills/logo-brief/SKILL.md +3 -2
- package/departments/brand/skills/mockup-generate/SKILL.md +3 -2
- package/departments/brand/skills/naming-evaluate/SKILL.md +3 -2
- package/departments/brand/skills/positioning-statement/SKILL.md +3 -2
- package/departments/brand/skills/primal-audit/SKILL.md +3 -2
- package/departments/brand/skills/ux-audit/SKILL.md +3 -2
- package/departments/brand/skills/voice-guide/SKILL.md +3 -2
- package/departments/brand/skills/wireframe/SKILL.md +3 -2
- package/departments/community/SKILL.md +3 -2
- package/departments/community/skills/ai-community/SKILL.md +3 -2
- package/departments/community/skills/betting-setup/SKILL.md +3 -2
- package/departments/community/skills/business-model/SKILL.md +3 -2
- package/departments/community/skills/content-calendar/SKILL.md +3 -2
- package/departments/community/skills/events-plan/SKILL.md +3 -2
- package/departments/community/skills/gamification-design/SKILL.md +3 -2
- package/departments/community/skills/growth-plan/SKILL.md +3 -2
- package/departments/community/skills/metrics-track/SKILL.md +3 -2
- package/departments/community/skills/moderation/SKILL.md +3 -2
- package/departments/community/skills/monetize-plan/SKILL.md +3 -2
- package/departments/community/skills/niche-setup/SKILL.md +3 -2
- package/departments/community/skills/onboarding-flow/SKILL.md +3 -2
- package/departments/community/skills/platform-select/SKILL.md +3 -2
- package/departments/content/SKILL.md +3 -2
- package/departments/content/skills/ai-workflow/SKILL.md +3 -2
- package/departments/content/skills/analytics/SKILL.md +3 -2
- package/departments/content/skills/calendar/SKILL.md +3 -2
- package/departments/content/skills/content-system/SKILL.md +3 -2
- package/departments/content/skills/monetization-plan/SKILL.md +3 -2
- package/departments/content/skills/newsletter-write/SKILL.md +3 -2
- package/departments/content/skills/platform-optimize/SKILL.md +3 -2
- package/departments/content/skills/repurpose-plan/SKILL.md +3 -2
- package/departments/content/skills/research-compile/SKILL.md +3 -2
- package/departments/content/skills/script-structure/SKILL.md +3 -2
- package/departments/content/skills/short-form/SKILL.md +3 -2
- package/departments/content/skills/thumbnail-package/SKILL.md +3 -2
- package/departments/content/skills/trend-hunt/SKILL.md +3 -2
- package/departments/content/skills/video-produce/SKILL.md +3 -2
- package/departments/content/skills/video-setup/SKILL.md +3 -2
- package/departments/content/skills/viral-design/SKILL.md +3 -2
- package/departments/content/skills/youtube-strategy/SKILL.md +3 -2
- package/departments/dev/SKILL.md +3 -2
- package/departments/dev/skills/ai-assisted-dev/SKILL.md +3 -2
- package/departments/dev/skills/animated-website/SKILL.md +7 -0
- package/departments/dev/skills/architecture-design/SKILL.md +3 -2
- package/departments/dev/skills/code-review/SKILL.md +3 -2
- package/departments/dev/skills/db-design/SKILL.md +3 -2
- package/departments/dev/skills/ddd-model/SKILL.md +3 -2
- package/departments/dev/skills/demo-gif/SKILL.md +3 -2
- package/departments/dev/skills/deploy/SKILL.md +3 -2
- package/departments/dev/skills/devops-pipeline/SKILL.md +3 -2
- package/departments/dev/skills/docs/SKILL.md +3 -2
- package/departments/dev/skills/evaluator-build-loop/SKILL.md +93 -0
- package/departments/dev/skills/mcp/SKILL.md +3 -2
- package/departments/dev/skills/performance-audit/SKILL.md +3 -2
- package/departments/dev/skills/refactor-plan/SKILL.md +3 -2
- package/departments/dev/skills/research/SKILL.md +3 -2
- package/departments/dev/skills/security-compliance/SKILL.md +3 -2
- package/departments/dev/skills/spec-miner/SKILL.md +86 -0
- package/departments/dev/skills/stack-check/SKILL.md +3 -2
- package/departments/ecom/SKILL.md +3 -2
- package/departments/ecom/skills/analytics/SKILL.md +3 -2
- package/departments/ecom/skills/browse-competitor/SKILL.md +3 -2
- package/departments/ecom/skills/cart-recovery/SKILL.md +3 -2
- package/departments/ecom/skills/cro-optimize/SKILL.md +3 -2
- package/departments/ecom/skills/customer-journey/SKILL.md +3 -2
- package/departments/ecom/skills/fulfillment-plan/SKILL.md +3 -2
- package/departments/ecom/skills/marketplace-manage/SKILL.md +3 -2
- package/departments/ecom/skills/pricing-strategy/SKILL.md +3 -2
- package/departments/ecom/skills/product-launch/SKILL.md +3 -2
- package/departments/ecom/skills/rfm-segment/SKILL.md +3 -2
- package/departments/ecom/skills/social-commerce/SKILL.md +3 -2
- package/departments/ecom/skills/store-audit/SKILL.md +3 -2
- package/departments/ecom/skills/subscription-model/SKILL.md +3 -2
- package/departments/finance/SKILL.md +3 -2
- package/departments/finance/skills/budget-plan/SKILL.md +3 -2
- package/departments/finance/skills/cashflow-forecast/SKILL.md +3 -2
- package/departments/finance/skills/ciso-advisor/SKILL.md +3 -2
- package/departments/finance/skills/financial-model/SKILL.md +3 -2
- package/departments/finance/skills/pitch-deck/SKILL.md +3 -2
- package/departments/finance/skills/scenario-analysis/SKILL.md +3 -2
- package/departments/finance/skills/unit-economics/SKILL.md +3 -2
- package/departments/finance/skills/valuation-model/SKILL.md +3 -2
- package/departments/kb/SKILL.md +3 -2
- package/departments/kb/skills/ai-research/SKILL.md +3 -2
- package/departments/kb/skills/competitive-intel/SKILL.md +3 -2
- package/departments/kb/skills/doc-extraction/SKILL.md +3 -2
- package/departments/kb/skills/doc-redaction/SKILL.md +3 -2
- package/departments/kb/skills/knowledge-ops/SKILL.md +3 -2
- package/departments/kb/skills/knowledge-review/SKILL.md +3 -2
- package/departments/kb/skills/learn-content/SKILL.md +3 -2
- package/departments/kb/skills/moc-create/SKILL.md +3 -2
- package/departments/kb/skills/persona-build/SKILL.md +3 -2
- package/departments/kb/skills/research-plan/SKILL.md +3 -2
- package/departments/kb/skills/search-kb/SKILL.md +3 -2
- package/departments/kb/skills/source-evaluate/SKILL.md +3 -2
- package/departments/kb/skills/taxonomy-manage/SKILL.md +3 -2
- package/departments/kb/skills/write-as-persona/SKILL.md +3 -2
- package/departments/landing/SKILL.md +3 -2
- package/departments/landing/skills/ab-test/SKILL.md +3 -2
- package/departments/landing/skills/affiliate-bridge/SKILL.md +3 -2
- package/departments/landing/skills/awareness-diagnose/SKILL.md +3 -2
- package/departments/landing/skills/email-sequence/SKILL.md +3 -2
- package/departments/landing/skills/funnel-metrics/SKILL.md +3 -2
- package/departments/landing/skills/headline-write/SKILL.md +3 -2
- package/departments/landing/skills/launch-sequence/SKILL.md +3 -2
- package/departments/landing/skills/offer-create/SKILL.md +3 -2
- package/departments/landing/skills/optimize-page/SKILL.md +3 -2
- package/departments/landing/skills/page-architect/SKILL.md +3 -2
- package/departments/landing/skills/persuasion-apply/SKILL.md +3 -2
- package/departments/landing/skills/webinar-funnel/SKILL.md +3 -2
- package/departments/leadership/SKILL.md +3 -2
- package/departments/leadership/skills/change-manage/SKILL.md +3 -2
- package/departments/leadership/skills/conflict-resolve/SKILL.md +3 -2
- package/departments/leadership/skills/culture-audit/SKILL.md +3 -2
- package/departments/leadership/skills/delegation-matrix/SKILL.md +3 -2
- package/departments/leadership/skills/disc-assess/SKILL.md +3 -2
- package/departments/leadership/skills/feedback-give/SKILL.md +3 -2
- package/departments/leadership/skills/hiring-plan/SKILL.md +3 -2
- package/departments/leadership/skills/performance-review/SKILL.md +3 -2
- package/departments/marketing/SKILL.md +3 -2
- package/departments/marketing/skills/ab-test/SKILL.md +3 -2
- package/departments/marketing/skills/analytics-report/SKILL.md +3 -2
- package/departments/marketing/skills/audience-segment/SKILL.md +3 -2
- package/departments/marketing/skills/calendar-plan/SKILL.md +3 -2
- package/departments/marketing/skills/competitor-analysis/SKILL.md +3 -2
- package/departments/marketing/skills/content-audit/SKILL.md +3 -2
- package/departments/marketing/skills/email-sequence/SKILL.md +3 -2
- package/departments/marketing/skills/growth-loop/SKILL.md +3 -2
- package/departments/marketing/skills/marketing-automation/SKILL.md +3 -2
- package/departments/marketing/skills/paid-campaign/SKILL.md +3 -2
- package/departments/marketing/skills/programmatic-seo/SKILL.md +3 -2
- package/departments/marketing/skills/seo-audit/SKILL.md +3 -2
- package/departments/marketing/skills/social-strategy/SKILL.md +3 -2
- package/departments/ops/SKILL.md +3 -2
- package/departments/ops/skills/bottleneck-find/SKILL.md +3 -2
- package/departments/ops/skills/dashboard-build/SKILL.md +3 -2
- package/departments/ops/skills/gdpr-compliance/SKILL.md +3 -2
- package/departments/ops/skills/github-ops/SKILL.md +3 -2
- package/departments/ops/skills/gtd-setup/SKILL.md +3 -2
- package/departments/ops/skills/integration-design/SKILL.md +3 -2
- package/departments/ops/skills/iso27001/SKILL.md +3 -2
- package/departments/ops/skills/lean-audit/SKILL.md +3 -2
- package/departments/ops/skills/metrics-dashboard/SKILL.md +3 -2
- package/departments/ops/skills/n8n-flow/SKILL.md +3 -2
- package/departments/ops/skills/quality-management/SKILL.md +3 -2
- package/departments/ops/skills/risk-management/SKILL.md +3 -2
- package/departments/ops/skills/soc2-compliance/SKILL.md +3 -2
- package/departments/ops/skills/sop-create/SKILL.md +3 -2
- package/departments/ops/skills/terminal-ops/SKILL.md +3 -2
- package/departments/ops/skills/workflow-automate/SKILL.md +3 -2
- package/departments/ops/skills/zapier-flow/SKILL.md +3 -2
- package/departments/org/SKILL.md +3 -2
- package/departments/org/skills/compensation-plan/SKILL.md +3 -2
- package/departments/org/skills/culture-define/SKILL.md +3 -2
- package/departments/org/skills/decision-framework/SKILL.md +3 -2
- package/departments/org/skills/hiring-plan/SKILL.md +3 -2
- package/departments/org/skills/meeting-optimize/SKILL.md +3 -2
- package/departments/org/skills/onboarding-design/SKILL.md +3 -2
- package/departments/org/skills/org-design/SKILL.md +3 -2
- package/departments/org/skills/remote-setup/SKILL.md +3 -2
- package/departments/org/skills/sop-process/SKILL.md +3 -2
- package/departments/org/skills/team-assess/SKILL.md +3 -2
- package/departments/pm/SKILL.md +3 -2
- package/departments/pm/skills/backlog-groom/SKILL.md +3 -2
- package/departments/pm/skills/discovery-plan/SKILL.md +3 -2
- package/departments/pm/skills/estimate-forecast/SKILL.md +3 -2
- package/departments/pm/skills/impact-map/SKILL.md +3 -2
- package/departments/pm/skills/kanban-setup/SKILL.md +3 -2
- package/departments/pm/skills/risk-register/SKILL.md +3 -2
- package/departments/pm/skills/roadmap-build/SKILL.md +3 -2
- package/departments/pm/skills/sprint-plan/SKILL.md +3 -2
- package/departments/pm/skills/stakeholder-map/SKILL.md +3 -2
- package/departments/pm/skills/standup-run/SKILL.md +3 -2
- package/departments/pm/skills/story-write/SKILL.md +3 -2
- package/departments/saas/SKILL.md +3 -2
- package/departments/saas/skills/benchmark-compare/SKILL.md +3 -2
- package/departments/saas/skills/churn-analysis/SKILL.md +3 -2
- package/departments/saas/skills/customer-success/SKILL.md +3 -2
- package/departments/saas/skills/growth-plan/SKILL.md +3 -2
- package/departments/saas/skills/gtm-strategy/SKILL.md +3 -2
- package/departments/saas/skills/launch-execute/SKILL.md +3 -2
- package/departments/saas/skills/metrics-dashboard/SKILL.md +3 -2
- package/departments/saas/skills/micro-saas-stack/SKILL.md +3 -2
- package/departments/saas/skills/mvp-build/SKILL.md +3 -2
- package/departments/saas/skills/niche-evaluate/SKILL.md +3 -2
- package/departments/saas/skills/onboarding-optimize/SKILL.md +3 -2
- package/departments/saas/skills/plg-setup/SKILL.md +3 -2
- package/departments/saas/skills/pricing-strategy/SKILL.md +3 -2
- package/departments/saas/skills/validate-idea/SKILL.md +3 -2
- package/departments/sales/SKILL.md +3 -2
- package/departments/sales/skills/challenger-sell/SKILL.md +3 -2
- package/departments/sales/skills/deal-qualify/SKILL.md +3 -2
- package/departments/sales/skills/discovery-call/SKILL.md +3 -2
- package/departments/sales/skills/forecast-revenue/SKILL.md +3 -2
- package/departments/sales/skills/negotiate-plan/SKILL.md +3 -2
- package/departments/sales/skills/objection-handle/SKILL.md +3 -2
- package/departments/sales/skills/pipeline-manage/SKILL.md +3 -2
- package/departments/sales/skills/pricing-negotiate/SKILL.md +3 -2
- package/departments/strategy/SKILL.md +3 -2
- package/departments/strategy/skills/blue-ocean/SKILL.md +3 -2
- package/departments/strategy/skills/bmc/SKILL.md +3 -2
- package/departments/strategy/skills/board-advisor/SKILL.md +3 -2
- package/departments/strategy/skills/cto-advisor/SKILL.md +3 -2
- package/departments/strategy/skills/extract-data/SKILL.md +3 -2
- package/departments/strategy/skills/five-forces/SKILL.md +3 -2
- package/departments/strategy/skills/growth-strategy/SKILL.md +3 -2
- package/departments/strategy/skills/moat-analysis/SKILL.md +3 -2
- package/departments/strategy/skills/position/SKILL.md +3 -2
- package/departments/strategy/skills/scenario-plan/SKILL.md +3 -2
- package/installer/config-seed.js +81 -25
- package/installer/graphify.js +340 -0
- package/installer/index.js +8 -1
- package/installer/keys.js +18 -3
- package/installer/update.js +8 -1
- package/knowledge/skills-manifest.json +27 -1
- package/mcps/registry.json +9 -9
- package/mcps/scripts/apply-mcps.sh +6 -2
- package/package.json +2 -1
- package/pyproject.toml +1 -1
- package/scripts/dashboard-api.py +336 -124
- package/scripts/guide_gen.py +139 -0
- package/scripts/migrate_skills_kb_first.py +3 -2
- package/scripts/synapse-bridge.py +9 -1
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -12,8 +12,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
<!-- arka:kb-first-prefix begin -->
|
|
15
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
16
|
-
> `[[wikilinks]]`
|
|
15
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
16
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
17
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
17
18
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
18
19
|
<!-- arka:kb-first-prefix end -->
|
|
19
20
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -12,8 +12,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
<!-- arka:kb-first-prefix begin -->
|
|
15
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
16
|
-
> `[[wikilinks]]`
|
|
15
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
16
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
17
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
17
18
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
18
19
|
<!-- arka:kb-first-prefix end -->
|
|
19
20
|
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev/evaluator-build-loop
|
|
3
|
+
description: >
|
|
4
|
+
Adversarial build loop for UI work: a generator implements against a
|
|
5
|
+
weighted rubric while an independent, ruthless evaluator tests the LIVE
|
|
6
|
+
app in a real browser — not the code, not screenshots — and the loop
|
|
7
|
+
repeats until the score clears the threshold. TRIGGER: "/dev
|
|
8
|
+
evaluator-build-loop", "build until it passes", "itera até passar",
|
|
9
|
+
"loop de UI", "evaluator loop", "faz e avalia até estar excelente"; any
|
|
10
|
+
UI build where the excellence-mandate visual benchmark applies and the
|
|
11
|
+
operator wants convergence without babysitting. SKIP: one-shot review
|
|
12
|
+
of an existing diff -> dev/code-review wins; UX audit of a shipped page
|
|
13
|
+
without a build loop -> dev/click-path-audit wins; writing E2E suites
|
|
14
|
+
-> dev/app-test wins.
|
|
15
|
+
allowed-tools: [Read, Grep, Glob, Bash, Edit, Write]
|
|
16
|
+
metadata:
|
|
17
|
+
origin: arkaos
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Evaluator Build Loop — `/dev evaluator-build-loop`
|
|
21
|
+
|
|
22
|
+
> **Agents:** Diana (Frontend, generator) + Rita (QA, evaluator) | **Framework:** Generator–evaluator separation, rubric-driven iteration
|
|
23
|
+
|
|
24
|
+
The dev server is up, the screenshot looks fine, and the agent that built
|
|
25
|
+
the page declares it done. Then someone clicks the second tab, resizes to
|
|
26
|
+
390px, or submits the form empty — and the illusion collapses. Builders
|
|
27
|
+
grade their own work with the same eyes that produced it, which is why
|
|
28
|
+
this loop never lets them. One role writes; a different role, in a fresh
|
|
29
|
+
context, tries to make the page fail.
|
|
30
|
+
|
|
31
|
+
## Roles — never merged, never shared
|
|
32
|
+
|
|
33
|
+
| Role | Agent | Contract |
|
|
34
|
+
|---|---|---|
|
|
35
|
+
| **Generator** | Diana | Reads the spec + the latest `feedback-NNN.md`; fixes EVERY open finding in order — functionality → craft → design → originality; keeps the dev server alive; commits once per iteration. |
|
|
36
|
+
| **Evaluator** | Rita | Fresh subagent per iteration, launched with ONLY the spec, the rubric, and the app URL — never the generator's reasoning. Drives the live app via the Playwright MCP. Scores against the rubric; writes the next `feedback-NNN.md`. |
|
|
37
|
+
|
|
38
|
+
The evaluator's launch context is the mechanism, not a detail: any shared
|
|
39
|
+
reasoning re-imports the generator's blind spots.
|
|
40
|
+
|
|
41
|
+
## The rubric
|
|
42
|
+
|
|
43
|
+
Written BEFORE iteration 1, with explicit weights, from the spec plus the
|
|
44
|
+
project design system and a named visual benchmark (excellence-mandate:
|
|
45
|
+
UI work loads frontend-design, ui-ux-pro-max, and the project design
|
|
46
|
+
system at maximum effort). Typical weighting: functionality 40 · craft
|
|
47
|
+
(states, a11y, responsiveness) 30 · design fidelity 20 · originality 10.
|
|
48
|
+
A dimension the spec does not care about gets weight 0 — do not invent
|
|
49
|
+
criteria mid-loop.
|
|
50
|
+
|
|
51
|
+
## Evaluator discipline
|
|
52
|
+
|
|
53
|
+
- Test the **live app** in the browser: click paths, keyboard, empty and
|
|
54
|
+
error states, viewport extremes. Not the code. Not screenshots.
|
|
55
|
+
- Be ruthless by instruction: hunt the edge case, penalize
|
|
56
|
+
default-looking output, refuse partial credit for "almost works".
|
|
57
|
+
- **Default-refuted:** when unsure whether a criterion passes, it fails.
|
|
58
|
+
Optimism is the generator's disease; the evaluator is the cure.
|
|
59
|
+
- Every finding names the concrete reproduction — URL, action, expected
|
|
60
|
+
vs. observed — so the generator fixes instead of guessing.
|
|
61
|
+
|
|
62
|
+
## Loop mechanics
|
|
63
|
+
|
|
64
|
+
1. Generator builds iteration N; commits on the working branch; emits the
|
|
65
|
+
`[arka:design]` evidence marker (frontend gate).
|
|
66
|
+
2. Evaluator (fresh context) scores the live app → `feedback-NNN.md` with
|
|
67
|
+
the score per dimension and ranked findings.
|
|
68
|
+
3. Score ≥ threshold (default 90/100) → exit to Quality Gate. Otherwise
|
|
69
|
+
loop.
|
|
70
|
+
4. **Circuit breaker:** 5 iterations without clearing the threshold, or
|
|
71
|
+
two consecutive iterations with no score improvement → stop and
|
|
72
|
+
escalate to the operator with the score history. Never grind silently.
|
|
73
|
+
|
|
74
|
+
All handoff is by file — spec, rubric, feedback — so the loop survives a
|
|
75
|
+
`/clear` and either role can be resumed cold.
|
|
76
|
+
|
|
77
|
+
## Output
|
|
78
|
+
|
|
79
|
+
```markdown
|
|
80
|
+
## Evaluator Build Loop Report
|
|
81
|
+
|
|
82
|
+
**Spec:** {path} | **Rubric threshold:** {n}
|
|
83
|
+
**Iterations:** {k} | **Final score:** {score}/100
|
|
84
|
+
|
|
85
|
+
| Iter | Functionality | Craft | Design | Originality | Total |
|
|
86
|
+
|---|---|---|---|---|---|
|
|
87
|
+
|
|
88
|
+
**Open findings:** {none, or the escalation list with reproductions}
|
|
89
|
+
**Evidence:** commits {range}, feedback files, `[arka:design]` markers
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
The loop feeds the Quality Gate; it does not replace it. Marta still has
|
|
93
|
+
the veto.
|
|
@@ -12,8 +12,9 @@ description: >
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
<!-- arka:kb-first-prefix begin -->
|
|
15
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
16
|
-
> `[[wikilinks]]`
|
|
15
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
16
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
17
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
17
18
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
18
19
|
<!-- arka:kb-first-prefix end -->
|
|
19
20
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Bash, Grep, Glob, Agent, WebFetch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -19,8 +19,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
19
19
|
---
|
|
20
20
|
|
|
21
21
|
<!-- arka:kb-first-prefix begin -->
|
|
22
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
23
|
-
> `[[wikilinks]]`
|
|
22
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
23
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
24
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
24
25
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
25
26
|
<!-- arka:kb-first-prefix end -->
|
|
26
27
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: dev/spec-miner
|
|
3
|
+
description: >
|
|
4
|
+
Mines a spec OUT of an existing codebase: maps entry points into
|
|
5
|
+
capabilities, samples the code under an explicit token budget, and
|
|
6
|
+
emits machine-parseable WHEN→THEN requirements and invariants — with
|
|
7
|
+
uncertainty marked, nothing invented, and the source commit recorded so
|
|
8
|
+
the spec knows when it has aged. TRIGGER: "/dev spec-miner", "extrai a
|
|
9
|
+
spec", "reverse-engineer the spec", "what does this code actually do,
|
|
10
|
+
as requirements", "documenta o comportamento existente", brownfield
|
|
11
|
+
onboarding, and always BEFORE refactoring code that has no spec. SKIP:
|
|
12
|
+
spec for something new -> dev/spec wins (greenfield WHAT); a guided
|
|
13
|
+
tour of the codebase -> dev/codebase-onboard wins; library or
|
|
14
|
+
framework evaluation -> dev/research wins.
|
|
15
|
+
allowed-tools: [Read, Grep, Glob, Bash, Write]
|
|
16
|
+
metadata:
|
|
17
|
+
origin: arkaos
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Spec Miner — `/dev spec-miner`
|
|
21
|
+
|
|
22
|
+
> **Agent:** Gabriel (Architect) | **Framework:** Living Specs, budgeted behavioral sampling
|
|
23
|
+
|
|
24
|
+
`arka-spec` answers "what should we build?" before code exists. This
|
|
25
|
+
skill answers the inverse — "what did we already build?" — for the far
|
|
26
|
+
more common case: a working system whose only specification is the code
|
|
27
|
+
itself, about to be refactored by someone who cannot afford to be wrong
|
|
28
|
+
about current behavior.
|
|
29
|
+
|
|
30
|
+
## Phase 1 — Map
|
|
31
|
+
|
|
32
|
+
Detect the structure and group entry points into capabilities: HTTP
|
|
33
|
+
routes, CLI commands, queued jobs, scheduled tasks, event handlers,
|
|
34
|
+
public package exports. Each capability gets a name and its entry files.
|
|
35
|
+
No code reading yet — this phase is inventory, and it bounds phase 2.
|
|
36
|
+
|
|
37
|
+
## Phase 2 — Sample and expand, under budget
|
|
38
|
+
|
|
39
|
+
Reading everything is a trap: the budget burns on utilities while the
|
|
40
|
+
behavior lives at the surface. So:
|
|
41
|
+
|
|
42
|
+
1. Read the entry and facade files of each capability first — in most
|
|
43
|
+
codebases they encode ~70% of observable behavior.
|
|
44
|
+
2. Descend ONE level into the call chain, only where the facade defers a
|
|
45
|
+
decision (validation, branching, persistence rules).
|
|
46
|
+
3. **Stop** at external boundaries (SDKs, frameworks, network) or at 15
|
|
47
|
+
files per capability, whichever comes first.
|
|
48
|
+
4. Whatever was deferred is listed in the spec as explicitly unmined —
|
|
49
|
+
deferred scope is visible scope, never silent scope.
|
|
50
|
+
|
|
51
|
+
## Phase 3 — Emit
|
|
52
|
+
|
|
53
|
+
Requirements in WHEN→THEN form, invariants as standalone guarantees, both
|
|
54
|
+
machine-parseable, written as a markdown document that sits beside the
|
|
55
|
+
authored specs in `core/specs/`:
|
|
56
|
+
|
|
57
|
+
```markdown
|
|
58
|
+
### Requirement: {capability} — {behavior}
|
|
59
|
+
WHEN {trigger and preconditions}
|
|
60
|
+
THEN {observable outcome}
|
|
61
|
+
<!-- source: {file}:{lines} -->
|
|
62
|
+
|
|
63
|
+
### Invariant: {guarantee}
|
|
64
|
+
<!-- source: {file}:{lines} -->
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
Three hard rules:
|
|
68
|
+
|
|
69
|
+
- **Never invent behavior.** If the code is ambiguous, write the
|
|
70
|
+
requirement with an `<!-- uncertainty: {what is unclear} -->` marker
|
|
71
|
+
instead of a guess. A wrong spec is worse than a gap — the gap gets
|
|
72
|
+
investigated, the wrong spec gets trusted.
|
|
73
|
+
- **Every claim carries a source pointer.** A requirement nobody can
|
|
74
|
+
trace to a file and line is an opinion.
|
|
75
|
+
- **Stamp the mined commit hash** in the spec frontmatter. When HEAD
|
|
76
|
+
moves, the spec's age is measurable with a single
|
|
77
|
+
`git log <hash>..HEAD`, so drift is visible instead of quiet.
|
|
78
|
+
|
|
79
|
+
## Output
|
|
80
|
+
|
|
81
|
+
The mined spec is a markdown document beside the authored ones, and
|
|
82
|
+
`status: mined` in its frontmatter is a proposed convention, not an
|
|
83
|
+
engine state: it stays `mined` until a human reviews the document and
|
|
84
|
+
changes the status by hand. The report ends with the coverage summary —
|
|
85
|
+
capabilities mined, files read vs. deferred, uncertainty count — so the
|
|
86
|
+
reader knows exactly how much of the system the spec actually saw.
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -7,8 +7,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
<!-- arka:kb-first-prefix begin -->
|
|
10
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
11
|
-
> `[[wikilinks]]`
|
|
10
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
11
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
12
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
12
13
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
13
14
|
<!-- arka:kb-first-prefix end -->
|
|
14
15
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -15,8 +15,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
15
15
|
---
|
|
16
16
|
|
|
17
17
|
<!-- arka:kb-first-prefix begin -->
|
|
18
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
19
|
-
> `[[wikilinks]]`
|
|
18
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
19
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
20
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
20
21
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
21
22
|
<!-- arka:kb-first-prefix end -->
|
|
22
23
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Agent, WebFetch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -8,8 +8,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
<!-- arka:kb-first-prefix begin -->
|
|
11
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
12
|
-
> `[[wikilinks]]`
|
|
11
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
12
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
13
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
13
14
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
14
15
|
<!-- arka:kb-first-prefix end -->
|
|
15
16
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -13,8 +13,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
15
|
<!-- arka:kb-first-prefix begin -->
|
|
16
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
17
|
-
> `[[wikilinks]]`
|
|
16
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
17
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
18
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
18
19
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
19
20
|
<!-- arka:kb-first-prefix end -->
|
|
20
21
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|
|
@@ -14,8 +14,9 @@ allowed-tools: [Read, Write, Edit, Bash, Grep, Glob, Agent, WebFetch, WebSearch]
|
|
|
14
14
|
---
|
|
15
15
|
|
|
16
16
|
<!-- arka:kb-first-prefix begin -->
|
|
17
|
-
> **KB-first:** query `mcp__obsidian__search_notes` and
|
|
18
|
-
> `[[wikilinks]]`
|
|
17
|
+
> **KB-first:** query `mcp__obsidian__search_notes` (and
|
|
18
|
+
> `mcp__graphify__query_graph` when configured) and cite `[[wikilinks]]`
|
|
19
|
+
> or graph nodes — or declare the gap — BEFORE any external research.
|
|
19
20
|
> Full doctrine: `arka/SKILL.md` (KB-First Research).
|
|
20
21
|
<!-- arka:kb-first-prefix end -->
|
|
21
22
|
|