architect
Find shallow modules and propose deepening refactors, ranked with file refs; never edits code.
Skill by indigoai-us
Chalk Labs
Need help deploying architect?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/indigoai-us-architect
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/architect
Tools it pre-approves 8
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Read,Grep,Glob,Bash,Agent,Write,Edit,AskUserQuestion
What's inside
- Skill name
architect- Description
- Find shallow modules and propose deepening refactors, ranked with file refs; never edits code. Use when code is hard to change or planning a refactor.
- License
- MIT
- Allowed tools
- Read,, Grep,, Glob,, Bash,, Agent,, Write,, Edit,, AskUserQuestion
- Instructions
- 149 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# Architect
Find places where the architecture is the bug. Pattern adapted from `mattpocock/skills` `improve-codebase-architecture`.
## Glossary — see `/codebase-design`
`/codebase-design` is the **single source of truth** for the deep-module vocabulary — **module, interface, implementation, depth, seam, adapter, leverage, locality**. Load it for the full definitions and use those terms exactly; never drift into "component," "service," "API," or "boundary."
One-line summary: a **deep** module puts a lot of behaviour behind a small **interface** at a clean **seam** — **depth** buys **leverage** for callers and **locality** for maintainers.
Key heuristics (full treatment in `/codebase-design`):
- **Deletion test:** imagine deleting the module. If complexity vanishes, it was a pass-through. If complexity reappears across N callers, it was earning its keep.
- **The interface is the test surface.**
- **One adapter = hypothetical seam. Two adapters = real seam.**
- **Side effects belong inside deepened modules**, not at the call site.
## Process
### Step 0 — Resolve company + path
1. Honour explicit `[company] [path]` arguments
2. Default `path` to cwd if cwd is inside `repos/`; else ask via `AskUserQuestion`
3. Resolve company from manifest if path is under `companies/{co}/repos/...`
### Step 1 — Read the project's domain model + decisions
- Read `<repo>/GLOSSARY.md` if present (domain glossary)
- Read `<repo>/docs/adr/` if present (architectural decisions)
- Read `<repo>/.claude/policies/` for any soft architecture rules
If `GLOSSARY.md` exists, **always** use its vocabulary in candidate descriptions. ADRs record decisions the skill should not re-litigate; mark candidates that contradict an ADR with `_contradicts ADR-NNNN — but worth reopening because…_` and only when friction is real.
### Step 2 — Fan out exploration
Spawn parallel `Agent subagent_type=Explore` calls — one per top-level slice of the target. Each agent:
- Walks its slice
- Notes friction in the architecture glossary's vocabulary
- Returns ≤500 words under fixed headings: **Shallow modules**, **Tightly coupled seams**, **Untested interfaces**, **Pass-throughs (deletion-test wins)**
### Step 3 — Score and rank candidates
For each friction point, assign:
| Dimension | Question | Score 1-3 |
|---|---|---|
| **Deletion test** | Would deleting this concentrate complexity? | 3 = yes, strong; 1 = no, just moves it |
| **Leverage** | Behaviour-to-interface ratio after deepening | 3 = high (lots behind a small interface); 1 = low |
| **Locality** | Change/bug concentration after deepening | 3 = single place; 1 = stays scattered |
| **Test surface** | Does the deepened interface become a useful test seam? | 3 = yes, replaces N small unit tests; 1 = no improvement |
| **Cost** | Refactor effort | 3 = small; 1 = large |
Sum to a single rank. Present top 5–10.
### Step 4 — Present candidates (no edits yet)
Output via numbered list, NOT `AskUserQuestion` first (the list is too long for a 4-option question — present then ask):
```markdown
## Candidate N — <name in GLOSSARY.md vocabulary>
**Files:** <file:line refs>
**Problem:** <friction described in glossary terms>
**Solution (plain English):** <what would change>
**Benefits:** locality: <X>, leverage: <Y>, test improvement: <Z>
**Score:** <total> (deletion: <d>, leverage: <l>, locality: <lo>, test: <t>, cost: <c>)
**Recommendation:** <Strong / Worth exploring / Speculative>
**ADR conflicts:** <none / contradicts ADR-NNNN — re-open because …>
```
The **Recommendation** badge is a plain-English read on top of the numeric score: `Strong` = high score and low risk, tackle first; `Worth exploring` = real friction but non-trivial cost or uncertainty; `Speculative` = plausible but the case isn't proven yet. Show both — the number ranks, the badge conveys confidence.
Then ask via `AskUserQuestion` (multiSelect: true): "Which candidates do you want to explore?" with up to 4 options (paginate if more).
### Step 5 — Grilling loop per picked candidate
For each picked candidate, drop into a one-question-at-a-time design conversation:
- What constraints does the deepened module need to satisfy?
- What goes behind the seam? What stays in callers?
- What's the interface — types, invariants, error modes, ordering, config?
- What tests survive the change? What new tests does the seam enable?
- Are there alternative interface shapes worth considering?
**Design it twice.** When the interface shape is non-obvious, don't settle on the first design. Reuse HQ's Explore fan-out: spin up parallel `Agent` sub-agents to design the deepened interface several *radically different* ways (e.g. a data-oriented shape, a callback/handler shape, a builder/pipeline shape). Then compare the returns on **depth** (behaviour-per-interface), **locality** (where change concentrates), and **seam placement** — and bring the winner (or a hybrid) back into the grilling conversation. See `/codebase-design`'s DESIGN-IT-TWICE.md for the pattern.
**Side effects happen inline:**
- Naming a deepened module after a concept not in `GLOSSARY.md` → add the term lazily.
- Sharpening a fuzzy term during the conversation → update `GLOSSARY.md` right there.
- User rejects with a load-bearing reason → offer `/adr`, framed as: _"Want me to record this as an ADR so future architecture passes don't re-suggest it?"_ Only offer for reasons future explorers would actually need; skip ephemeral or self-evident ones.
**Do not write the refactor.** This skill produces the design and the case for it. Implementation goes through `/run-project` or `/tdd`.
### Step 6 — Save report
Save to `workspace/reports/{slug}-architect.md`:
```markdown
# Architect: <repo> @ <path>
**HEAD:** <sha>
**GLOSSARY.md present:** yes / no
**ADRs present:** <count>
## Candidates
### 1. <name> — DECISION: <explored / declined / pending>
<full block from Step 4>
#### Grilling notes (if explored)
<key questions + answers>
#### Outcome
- ADR opened: <yes / no — link>
- Implementation queued: <yes — /prd or /run-project ref / no>
### 2. …From indigoai-us/hq-pack-core-skills, MIT.
More from indigoai-us/hq-pack-core-skills
- 0.570score
daily-brief
indigoai-us
Build the user's Daily Brief across personal work and every permitted company.
SkillAFreshness: AClaude Code +9 - 0.565score
decision-desk
indigoai-us
The owner's decision desk for one /super-conductor link.
SkillAFreshness: AClaude Code +9 - 0.565score
conduct-join
indigoai-us
Join this already-running session to a /conduct session as one of its children, so the conductor can send it instructions and receive its reports.
SkillAFreshness: AClaude Code +9 - 0.561score
codebase-design
indigoai-us
Vocabulary for designing deep modules and clean interfaces.
SkillAFreshness: AClaude Code +9 - 0.561score
conduct
indigoai-us
Orchestrator mode: coordinate only; small tasks go to subagents, worker areas to standing hq lanes.
SkillAFreshness: AClaude Code +9 - 0.561score
capacity
indigoai-us
Show usage, limits and reset times for every signed-in AI account (Claude, Codex, Grok) as a card in chat, or a table in a terminal.
SkillAFreshness: AClaude Code +9 - 0.558score
adr
indigoai-us
Capture qualifying architecture decisions as ADRs in the right HQ or repo location.
SkillAFreshness: AClaude Code +9 - 0.558score
accept
indigoai-us
Accept HQ membership invites from a magic link or raw token.
SkillAFreshness: AClaude Code +9 - 0.558score
commit-main
indigoai-us
Commit every dirty file in the current repo, only when on main.
SkillAFreshness: AClaude Code +9 - 0.558score
decision-queue
indigoai-us
Resolve pending user decisions one at a time, one picker per item.
SkillAFreshness: AClaude Code +9 - 0.558score
clean-worktree
indigoai-us
Merge an HQ worktree branch back into local main, then remove the worktree and branch.
SkillAFreshness: AClaude Code +9 - 0.558score
convert-codex
indigoai-us
Add Codex support to older Claude-first HQ roots without breaking Claude setup.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 23, 2026 (7 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from indigoai-us
- 0.570score
daily-brief
indigoai-us
Build the user's Daily Brief across personal work and every permitted company.
SkillAFreshness: AClaude Code +9 - 0.565score
decision-desk
indigoai-us
The owner's decision desk for one /super-conductor link.
SkillAFreshness: AClaude Code +9 - 0.565score
conduct-join
indigoai-us
Join this already-running session to a /conduct session as one of its children, so the conductor can send it instructions and receive its reports.
SkillAFreshness: AClaude Code +9 - 0.561score
capacity
indigoai-us
Show usage, limits and reset times for every signed-in AI account (Claude, Codex, Grok) as a card in chat, or a table in a terminal.
SkillAFreshness: AClaude Code +9 - 0.561score
codebase-design
indigoai-us
Vocabulary for designing deep modules and clean interfaces.
SkillAFreshness: AClaude Code +9 - 0.561score
conduct
indigoai-us
Orchestrator mode: coordinate only; small tasks go to subagents, worker areas to standing hq lanes.
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get architect running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
architect skill. Agent Mart. https://agentmart.dev/skills/indigoai-us-architect (last updated 2026-10-24)