skills/arc-learning/SKILL.md
Use when optional learning is enabled and observations should become reviewable candidates, inactive drafts, and explicitly activated artifacts.
npx skillsauth add gregoryho/arcforge arc-learningInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
arc-learning turns repeated project observations into reviewable learning candidates. Learning is disabled by default, automatic once enabled, and conservative at every behavior-change boundary.
Position: observations → candidate queue → dashboard review → inactive drafts → explicit activation → active artifacts
The primary interface for reviewing and acting on candidates is the dashboard (arcforge learn dashboard). Candidates are queued automatically by the observer daemon's LLM curator; the dashboard is where the human reviewer approves, dismisses, materializes, activates, promotes, or deactivates them.
The default scope is project-local. Promotion to global scope is an explicit dashboard action; silent auto-promotion to global remains unsupported — the dashboard's Promote action is the only path, and it requires explicit user authorization.
Post-pivot (v3.1) primary surface — dashboard-driven:
| Task | Command |
|---|---|
| Check config | arcforge learn status [--json] |
| Enable project learning | arcforge learn enable --project |
| Disable project learning | arcforge learn disable --project |
| Open review dashboard | arcforge learn dashboard [--port N] |
Once the daemon is running and learning is enabled, the dashboard is where all candidate review and lifecycle actions happen (Approve, Dismiss, Materialize, Activate, Deactivate, Promote, Evolve). The dashboard reads from ~/.arcforge/learning/candidates/queue.jsonl (the canonical Layer 5 queue produced by the LLM curator). See docs/guide/learning-dashboard.md for the full operational guide.
The following arcforge learn ... subcommands remain in the CLI for backward compatibility with older instinct-clustering tests but operate on the pre-pivot legacy data model in ${ARCFORGE_ROOT}/scripts/lib/learning.js — they do not read or write the post-pivot candidate queue. Use the dashboard for new workflows.
arcforge learn analyze --project — retired in v3.1; the command exits with a deprecation notice. The statistical pipeline is replaced by the LLM curator (observer daemon Layer 3+4).arcforge learn review --project — legacy CLI summary; use dashboard instead.arcforge learn inbox --project — legacy pending list; use dashboard.arcforge learn approve <candidate-id> --project / arcforge learn reject <candidate-id> --project — legacy approval/rejection against pre-pivot data; use dashboard [Approve] / [Dismiss].arcforge learn materialize <candidate-id> --project — legacy materialization (writes project-relative .draft siblings); post-pivot drafts live in ~/.arcforge/learning/drafts/<cid>/<mid>/instincts/<name>.md via dashboard [Materialize].arcforge learn activate <candidate-id> --project — legacy activation; use dashboard [Activate] (Layer 8 activate.js).arcforge learn inspect <candidate-id> --project / arcforge learn drafts --project — legacy inspection; use dashboard candidate card.Use --json on any command when another tool or test needs machine-readable output.
arcforge learn status [--json]. Learning is disabled by default for both project and global scopes.arcforge learn enable --project for project-local learning. After enablement, the observer daemon assembles evidence batches, calls the LLM curator, and automatically queues pending candidates in the candidate queue.arcforge learn dashboard to open the browser control plane at http://localhost:3334. The dashboard is the canonical post-pivot review surface.[Approve] or [Dismiss] action. Approval is required before any artifact is written.[Materialize] action. Draft artifacts are written to ~/.arcforge/learning/drafts/<candidate-id>/<materialization-id>/instincts/<name>.md — these are inactive review files; they are not loaded into Claude context.[Activate] action only after reviewing the draft. Activation copies the draft to ~/.arcforge/instincts/<project>/<candidate-id>.md (project scope) or ~/.arcforge/instincts/global/<candidate-id>.md (global scope), with supersede_with_backup if an active artifact already exists at that path. SessionStart never auto-loads activated instinct bodies — surfacing is via dashboard / /recall only.The full set of statuses a candidate moves through:
| Status | Meaning |
|---|---|
| pending_review | Queued by LLM curator, awaiting human review |
| needs_more_evidence | Flagged for more evidence before approval |
| approved | Human-approved, ready to materialize |
| materialized | Inactive draft artifact(s) written under ~/.arcforge/learning/drafts/<cid>/<mid>/, ready to activate |
| activated | Draft promoted to active instinct file under ~/.arcforge/instincts/<scope>/<cid>.md |
| deactivated | Previously activated, now deactivated |
| dismissed | Rejected; no artifacts written |
| superseded | Replaced by an evolved candidate |
skills/arc-learning/scripts/learn.js remains in the tree for older instinct-clustering tests and compatibility, but the supported MVP surface is the arcforge learn ... lifecycle above. Do not use the legacy script to bypass candidate approval, inactive draft materialization, or explicit activation gates.
testing
Use when the user explicitly runs the slash command `/arc-auditing-spec <spec-id>` to produce a read-only advisory audit of an arcforge SDD spec family (design.md, spec.xml, dag.yaml). Only triggered by direct user invocation; never auto-invoked from any pipeline skill (arc-brainstorming, arc-refining, arc-planning).
development
Use when the user wants to create, query, audit, or initialize an Obsidian vault — wiki / knowledge base / second brain, project tracker, news pipeline, journal, or any typed-note vault. Trigger on saving notes / capturing ideas / sharing URLs to document; querying the vault ("what do I know about", "search my vault"); auditing health (missing links, orphans, drift); ingesting raw files; "init a new vault" or "register vault"; mentions of any registered vault. Also triggers on casual "save this" / "file this back". Do NOT trigger for Excalidraw diagram creation (use arc-diagramming-obsidian), general code, debugging, PR reviews, web searches.
testing
Use when maintaining ArcForge itself by creating, editing, or verifying ArcForge skills before deployment
testing
Use when you need to verify work is complete before making completion claims