agent-common
Use when a cc10x agent starts a task: the shared preamble for the memory protocol, the contract format, and the output rules.
Greenfield architecture design: map functionality flows, draw components, design APIs, classify dependencies, plan observability. For multi-component, API, schema, auth, or integration-heavy work. For retrofitting existing code, use codebase-hygiene instead.
Claude Code
$ npx -y skills add romiluz13/cc10x --skill architecture --agent claude-code
Codex
$ npx skills add romiluz13/cc10x --skill architecture -a codex -y
Cursor
$ npx skills add romiluz13/cc10x --skill architecture -a cursor -y
Gemini CLI
$ npx skills add romiluz13/cc10x --skill architecture -a gemini-cli -y
GitHub Copilot
$ npx skills add romiluz13/cc10x --skill architecture -a github-copilot -y
OpenCode
$ npx skills add romiluz13/cc10x --skill architecture -a opencode -y
Windsurf
$ npx skills add romiluz13/cc10x --skill architecture -a windsurf -y
name: architecture description: | Greenfield architecture design: map functionality flows, draw components, design APIs, classify dependencies, plan observability. For multi-component, API, schema, auth, or integration-heavy work. For retrofitting existing code, use codebase-hygiene instead. allowed-tools: Read Grep Glob LSP Bash user-invocable: false
Design systems from scratch: map flows, then draw components. For retrofitting existing code, use `codebase-hygiene` instead.
| Request type | Use | | ------------- | ----- | | New system/major feature (greenfield) | This skill | | Existing code with shallow modules | `codebase-hygiene` | | Multi-component integration | This skill | | Single-component refactor | `planning` + `building` |
Map every user flow end-to-end before designing any component:
Flow: [name] 1. [step] → [what the system does] → [what the user sees] 2. [step] → [what the system does] → [what the user sees] Error paths: - [error] → [system response] → [user sees]
Every flow must have its error paths mapped. Unmapped error paths become unmapped components.
Translate flows into components:
For each component:
Before finalizing any component boundary, apply the **Deletion Test** and **Two-Adapter Rule** as defined in `cc10x:codebase-design`. A component that fails the deletion test (complexity vanishes if deleted) or fails the two-adapter rule (it is a port with only one adapter — an ordinary caller or test exercising the interface is not an adapter) is not a real boundary yet — fold it into its caller or defer the split until a second concrete need appears.
Box diagram: your system + external systems it talks to. One paragraph per external system: what it provides, what you depend on.
Internal boxes: web app, API, database, queue, worker. Arrows show data flow. One paragraph per container: technology choice, responsibility.
Inside each container: the modules/classes. Arrows show call relationships. This is what the builder will implement.
Use LSP to understand existing architecture before designing new:
Design APIs from the flow, not from the data model:
1. **What does the user need to do?** (action, not resource) 2. **What's the minimal interface that enables it?** (fewest endpoints/parameters) 3. **What's the error contract?** (every error case from the flow mapping) 4. **What's the type contract?** (input/output types, not just shapes)
// Good: functionality-aligned
POST /orders/{id}/cancel → { status, cancelledAt }
// Bad: data-model-aligned
PUT /orders/{id} → { ..., status: "cancelled", ... }For each integration:
| Field | Value | | ------- | ------- | | **System** | [name] | | **Protocol** | [HTTP/gRPC/CLI/message queue] | | **Direction** | [we call them / they call us / both] | | **Contract** | [request/response schema or event schema] | | **Failure mode** | [what happens when it's down] | | **Retry policy** | [retries, backoff, circuit breaker] |
| Class | Meaning | Example | | ------- | --------- | --------- | | **Owned** | We control the code and deploy it | Internal service | | **Wrapped** | We depend on it but wrap it in our interface | Third-party SDK behind adapter | | **Consumed** | We depend on it directly, no wrapper | External API called directly | | **Infra** | Platform-level dependency | Database, message queue |
Wrapped dependencies can be swapped. Consumed dependencies cannot. Track which is which — it determines your coupling risk.
For each component:
The deep-module vocabulary (module, interface, depth, seam, adapter, leverage, locality, deletion test, two-adapter rule) is defined in `cc10x:codebase-design`. **Use those terms exactly.**
Three extra terms specific to greenfield architecture (not in codebase-design):
When a module's interface is non-trivial, design it twice:
1. **First design:** the obvious approach. Write it out fully. 2. **Second design:** a different approach (not a refinement of the first).
Compare both. The first design is usually shallow — it mirrors the implementation. The second design reveals what the interface *should* hide. Use the better one, or a hybrid.
**Why:** One-pass int
The Loop Engine for Claude Code — engineer the loop, not the prompt. 1 router · 14 agents · 21 skills · 8 workflows. Fail-closed gates, test honesty, anti-anchored review.
Use when a cc10x agent starts a task: the shared preamble for the memory protocol, the contract format, and the output rules.
Use when writing production code test-first: the RED-GREEN-REFACTOR cycle, false-RED detection, vertical slicing, scope…
Answers questions about cc10x itself — what it is, how to install and configure it, how the router, workflows, memory, and hooks…
Routes build, debug, review, plan, QA, and triage requests through the cc10x workflows (task graphs, workflow artifacts, gates);…
Two-mode skill: (1) adversarial review — spec compliance + code quality + security, confidence-scored findings with file:line…
Canonical deep-module vocabulary (module, interface, depth, seam, adapter, leverage, locality) for designing a module's shape — a…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.