council
npx machina-cli add skill justinjdev/fellowship/council --openclawCouncil — Context-Aware Task Onboarding
Overview
Loads focused, task-relevant context at the start of any non-trivial work session. Produces a structured Session Context block that serves as the foundation for all downstream work. This is the "onboarding the agent within every repo" pattern from context engineering.
When to Use
- Starting any task that involves more than a quick fix
- Beginning a new session on existing in-progress work
- Invoked automatically as Phase 0 of
/quest
Process
Step 0: Check for Existing Checkpoint
Before doing anything else, check if tmp/checkpoint.md exists (in repo root).
If it does:
- Read the checkpoint file
- Present the checkpoint summary to the user
- Ask: "Found a checkpoint from [timestamp] on branch [branch]. Resume from where you left off, or start fresh?"
- If resuming: load the checkpoint as the Session Context. Skip Steps 1-4 and go directly to Step 5 (confirm with user).
- If starting fresh: delete the checkpoint file and continue with Step 1.
Step 1: Read Project Context
Read the root CLAUDE.md. Extract:
- Reference files relevant to the task area
- Review conventions that apply
- Architecture constraints
If no CLAUDE.md exists, note: "Consider running /chronicle to set up project context."
Also check for ~/.claude/fellowship.json (the user's personal Claude directory). If it exists, read it and note any non-default settings. These will be included in the Session Context block under Architecture Notes so downstream skills (quest, lembas) are aware of the active configuration.
Step 2: Understand the Task
Ask one focused question:
"What are you working on? (One sentence describing the task and which area of the codebase it touches.)"
If invoked by quest, the task description is passed in — skip the question.
Step 3: Identify Package Scope
Determine the scope of the task within the project:
Monorepo (has packages/, apps/, or a workspace config like pnpm-workspace.yaml):
- Match the task area to a package directory (e.g.,
packages/<name>/,apps/<name>/) - If ambiguous, check the monorepo structure (
lstop-level directories) and ask the user - If the task spans multiple packages, list all affected packages
- If a package-level CLAUDE.md exists (e.g.,
packages/<name>/CLAUDE.md), read it and merge its conventions with the root CLAUDE.md. Package-level conventions override root conventions where they conflict.
Single-package repo: Skip this step — the scope is the whole project. Proceed to Step 4.
This scope constrains all downstream scanning and verification.
Step 4: Scan for Relevant Files
Use the Explore agent (Task tool with subagent_type=Explore) to find files related to the task description. In a monorepo, scope the search to the identified package(s) — do not scan the entire repo.
Focus on:
- Files that will likely need modification
- Files that define the patterns to follow (reference files)
- Test files for the affected area
- Config or type files that constrain the work
Keep the scan targeted — 5-10 key files maximum, not an exhaustive listing.
Step 5: Produce Session Context Block
Output a structured block in this exact format:
## Session Context
**Task:** [one-line description]
**Package(s):** [package name(s) and path(s)]
**Key Files:**
- [path/to/file:lines] — [why it's relevant]
- [path/to/file:lines] — [why it's relevant]
**Relevant Conventions:**
- [convention from root CLAUDE.md that applies]
- [convention from package CLAUDE.md that applies, if exists]
**Architecture Notes:**
- [constraints, patterns, or dependencies to be aware of]
**Out of Scope:**
- [things explicitly not to touch or change]
- [other packages not affected by this task]
Step 6: Confirm with User
Present the Session Context block and ask:
"Does this capture the right scope? Anything missing or out of bounds?"
Revise based on feedback.
Key Principles
- Targeted, not exhaustive. 5-10 key files, not every file in the directory.
- Carry forward. The Session Context block is referenced by lembas and quest throughout the session.
- One question. Don't interrogate the user. One focused question, then do the work.
Source
git clone https://github.com/justinjdev/fellowship/blob/main/skills/council/SKILL.mdView on GitHub Overview
Council initializes focused, task-relevant context at the start of any non-trivial work session. It reads CLAUDE.md, scans for related files, and outputs a structured Session Context block to anchor downstream work across repos and packages.
How This Skill Works
On invocation, Council first checks for an existing tmp/checkpoint.md to resume or cleanly start fresh. It then reads the root CLAUDE.md (and package CLAUDE.md if present) and any ~/.claude/fellowship.json to assemble Architecture Notes. It prompts for task clarity (unless invoked with a quest-provided description), determines the package scope (monorepo vs single-package), scans for 5-10 key files with the Explore tool, and finally emits a standardized Session Context block to guide subsequent skills.
When to Use It
- Starting a non-trivial task in a repo to establish context
- Beginning a new session on existing in-progress work
- Invoked automatically as Phase 0 of /quest
- Resuming after a checkpoint found at tmp/checkpoint.md
- Working across a monorepo where package-specific conventions apply
Quick Start
- Step 1: Invoke Council via /council at the start of a non-trivial task
- Step 2: Council checks for a checkpoint; resume or start fresh accordingly
- Step 3: Council outputs a Session Context block to guide subsequent steps
Best Practices
- Always check for an existing checkpoint before starting a new session
- Read root CLAUDE.md and any package-level CLAUDE.md to capture conventions
- Include non-default settings from ~/.claude/fellowship.json in Architecture Notes
- Limit the file scan to 5-10 key files relevant to the task
- Produce a precise Session Context block to anchor downstream tasks
Example Use Cases
- Onboard a developer for a data-visualization feature in a monorepo by producing a targeted Session Context for packages/visuals
- Resume a long-running refactor from a tmp/checkpoint.md checkpoint and continue with Step 5 Session Context
- Initiate a new task in a repo lacking CLAUDE.md by prompting for context and generating initial guidance
- Kick off a /quest Phase 0 for a database migration, ensuring architecture constraints are captured
- Scan and align conventions across root CLAUDE.md and package CLAUDE.md before implementing cross-package changes