skills/first-tree/SKILL.md
Canonical whitepaper and routing skill for First Tree. Explains what belongs in a Context Tree, how source or workspace roots, tree repos, and bindings relate, and how the current `first-tree tree` and `first-tree github scan` surfaces fit together. Use when you need shared First Tree concepts, need to choose between onboarding, sync, write, or GitHub notification workflows, or need the high-level CLI map before acting.
npx skillsauth add agent-team-foundation/first-tree first-treeInstall 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.
This is the single source of truth for First Tree methodology and routing. Load it before any of the task-specific skills.
First Tree revolves around three objects:
source/workspace root — where the team or agent does implementation worktree repo — the Git repo that stores durable decisions and ownershipbinding — the metadata that connects the source/workspace root to the tree repoUse the tree for decisions, constraints, ownership, and cross-repo relationships. Keep execution detail in source systems.
Use the skill that matches the job:
first-tree-onboarding for connecting a repo or workspace to First Treefirst-tree-sync for auditing drift between merged code and tree contentfirst-tree-write for writing tree updates from explicit source materialfirst-tree-github-scan for handling a single GitHub notification inside the daemon pathgithub-scan for human/operator work on the GitHub scan daemon itselfIf you are unsure which one applies, stay here and read references/cli-manual.md.
The current public CLI surface is:
first-tree tree — tree lifecycle, bindings, validation, publish, and skill maintenancefirst-tree github scan — GitHub inbox runtime and daemon operationsDo not invent new top-level CLI groups when acting on the current repo. If a workflow needs more automation than the CLI already offers, keep the orchestration inside the skill until the shared logic is worth extracting.
first-tree-onboarding when the repo is not yet bound.first-tree-sync for broad drift audits and first-tree-write for explicit sources.first-tree-github-scan as an agent behavior spec, and use github-scan
for human/operator daemon work.references/structure.md — tree objects, files, and binding shapereferences/functions.md — what the tree is forreferences/anti-patterns.md — what not to put in the treereferences/maintenance.md — update discipline and review flowreferences/cli-manual.md — current CLI map and statusreferences/llms.txt — short machine-facing overviewtools
One-shot onboarding command for First Tree. Drives a repo or workspace from "no first-tree" all the way to "tree bound, real content drafted, daemon running, agent templates confirmed" — end to end, in one skill invocation. Trigger this skill when the user invokes `/first-tree-onboarding`, says "onboard this repo to first-tree", "set up first-tree here", "complete first-tree onboarding", or runs first-tree against an unbound repo or workspace. Also trigger when re-running on an already-bound repo to refresh skills, draft missing content, or reverify the daemon. Use this skill instead of running `first-tree tree init` from raw memory; it owns role-by-role branching, the initial-content drafting phase the CLI does NOT do, and the final doctor checks.
development
Audit and repair drift between merged code and the Context Tree in both directions — tree→code (does code still support tree facts?) and code→tree (does the tree register everything code now contains?). Use when the tree may be stale, wrong, outdated, or missing coverage for recent code changes; after a large merge; before release; on a freshly onboarded tree; or when a GitHub notification was routed `route=sync`. Sync owns broad drift discovery, structural skeleton repair, and substantive write hand-off across one tree. Use `first-tree-write` instead when the user already gave you a specific PR / doc / note to write into the tree.
tools
Operate the `first-tree github scan` CLI — the GitHub notification daemon and inbox runtime. Use whenever you need to run, start, stop, inspect, poll, or debug github-scan; view or respond to GitHub-triggered work from the terminal; or wire up the github-scan statusline hook.
development
Write Context Tree updates from explicit source material — code PRs, design docs, meeting notes, raw text. Use when the user gives you a concrete source and wants the right durable tree change drafted, linked, and reviewed. This skill is source-driven and targeted; use `first-tree-sync` instead for broad drift audits with no specific source.