This skill should be used when the user wants to "reason about architecture", "get strategic analysis", "use a reasoning model", "prepare context for deep think", "transform reasoning output", or when Claude needs to assemble codebase context for frontier reasoning models and transform their responses into actionable work items.
Assembles codebase context for frontier reasoning models and transforms their responses into actionable work items.
npx claudepluginhub mberto10/mberto-compoundThis skill inherits all available tools. When active, it can use any tool Claude has access to.
helpers/gather_context.pytemplates/_actionable-output.mdtemplates/architecture.mdtemplates/debt.mdtemplates/general.mdtemplates/migration.mdtemplates/roadmap.mdBridge the gap between codebase knowledge and frontier reasoning models. This skill defines:
The /reason command provides the workflow. This skill provides the methodology.
The gather_context.py helper assembles a structured markdown document with these sections:
| Section | Source | Purpose |
|---|---|---|
| Question | User input | What the reasoning model should analyze |
| Subsystem Knowledge | subsystems_knowledge/**/*.yaml | Technical boundaries, invariants, dependencies, gaps |
| Linear Project State | Linear MCP tools | Current work state, what's planned, what exists |
| Recent Commits | git log | Active areas, momentum, recent decisions |
| Response Instructions | Template file | How to structure the response |
When specific subsystems are requested, the helper resolves transitive dependencies up to 2 hops via dependencies.compile_time and dependencies.runtime. This ensures the reasoning model sees the full dependency context, not just the directly requested subsystems.
When --all-subsystems is used, all YAMLs are included. Use this for broad strategic questions; use specific subsystems for focused architecture questions.
Claude fetches Linear data via MCP tools and serializes it to a temporary markdown file before invoking the helper. The format should be:
### Initiative: {title}
Status: {status}
#### Project: {title}
Status: {status} | Lead: {lead}
##### Milestone: {title}
Status: {status} | Target: {date}
- [{status}] {issue title} (ID: {id})
Priority: {priority} | Assignee: {assignee}
The transform step uses best-effort section-marker parsing. Templates encourage the reasoning model to use these section headers when its analysis produces actionable work, but none are strictly required. The transform step will look for these sections and extract what it finds. Include whichever are relevant to the analysis.
## SummaryExecutive summary of the analysis. Typically 2-3 paragraphs.
## Linear HierarchyProposed work breakdown using this format:
Initiative: {title}
Project: {title}
Milestone: {title} — {what is true after}
- [S] {issue title} | Subsystems: {list} | {one-line description}
- [M] {issue title} | Subsystems: {list} | {one-line description}
- [L] {issue title} | Subsystems: {list} | {one-line description}
Complexity markers:
[S] — Small: 1-2 change groups, single subsystem, straightforward[M] — Medium: 3-5 change groups, 1-2 subsystems, some complexity[L] — Large: 5+ change groups, multiple subsystems, consider splittingEach issue line must include:
Subsystems: with comma-separated subsystem IDs## Subsystem UpdatesProposed changes to subsystem YAML specs:
Subsystem: {id}
Update: {section} — {what to add/change}
Reason: {why this is needed}
## ADR: {title}Architecture Decision Record with fields:
## Immediate PlanTop 3-5 ordered next steps, each referencing specific subsystems or Linear items.
The transform step uses best-effort section-marker parsing. It does NOT require perfect formatting — it extracts what it can and reports what it found.
Scan for ## headers matching the contract sections. Content between one ## header and the next belongs to that section.
For each line in the ## Linear Hierarchy section:
Initiative: → extract titleProject: (possibly indented) → extract titleMilestone: (possibly indented) → extract title and "what is true after" (after the —)- [S], - [M], or - [L] → extract:
|)Subsystems: before next |)When creating Linear issues from parsed items, expand each into the harness-consumable template:
## Goal
{issue description}
## Subsystems
{subsystem list from parsed line}
## Acceptance Criteria
- [ ] {derived from description — Claude infers testable assertions}
## Constraints
{loaded from referenced subsystem specs' invariants}
## Done When
{loaded from referenced subsystem specs' tests.tier0}
For each block in ## Subsystem Updates:
Subsystem: lineUpdate: lineReason: lineExtract the ADR title from the ## ADR: {title} header. Content is preserved as-is for the ADR file.
All reasoning sessions are saved to an audit trail for traceability:
strategic-reasoning/
{timestamp}-{slug}/
context.md — the assembled context document (gather output)
response.md — the reasoning model's raw response (transform input)
actions.md — what was created/modified (transform output)
Naming convention:
{timestamp} — YYYYMMDD-HHMM format{slug} — kebab-case derived from the question (first 5 words)Location: Relative to the project root. This directory should be git-tracked as part of the project's decision history.
| Component | How Reasoning Craft Interacts |
|---|---|
/reason gather | Invokes gather_context.py, creates audit trail |
/reason transform | Parses response, creates Linear items and files |
/strategic-plan | Alternative for simpler decompositions that don't need deep reasoning |
/harness | Consumes the issues produced by transform (harness-consumable format) |
| Strategic Planner skill | Transform uses its methodology for issue sizing and hierarchy validation |
| Subsystem specs | Source of truth for invariants, dependencies, and owned paths |
| Linear MCP tools | Read existing state (gather), create new items (transform) |
/reason gather
│
├── Assemble context (subsystems + Linear + commits + template)
├── Copy to clipboard / save to file
│
▼
User pastes into frontier reasoning model (Gemini, o3, etc.)
│
▼
/reason transform
│
├── Parse response sections
├── Propose actions (Linear hierarchy, YAML updates, ADRs)
├── Execute confirmed actions
│
▼
/harness start → picks up new issues
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.
Create beautiful visual art in .png and .pdf documents using design philosophy. You should use this skill when the user asks to create a poster, piece of art, design, or other static piece. Create original visual designs, never copying existing artists' work to avoid copyright violations.