agents-standards
Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
Single gateway for all core↔tech-pack interactions. Reads manifests, resolves paths, loads skills/agents, routes commands.
$ npx -y skills add LiorCohen/sdd --skill techpacks --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/techpacksContext preview
The summary Claude sees to decide when to auto-load this skill.
Single gateway for all core↔tech-pack interactions. Reads manifests, resolves paths, loads skills/agents, routes commands.
name: techpacks description: Single gateway for all core↔tech-pack interactions. Reads manifests, resolves paths, loads skills/agents, routes commands. version: 1.0.0
Single entry point for all core↔tech-pack interactions. No other core file reads `techpack.yaml` directly, resolves tech pack paths, or loads tech pack skills on its own.
Eight typed operations — see [resources/operations.md](resources/operations.md) for detailed implementations.
| Operation | Purpose | Returns | |-----------|---------|---------| | `readManifest(namespace)` | Parse and return validated `techpack.yaml` | Typed manifest object | | `resolvePath(namespace, path)` | Resolve a relative path from manifest to absolute path | Absolute file path | | `loadSkill(namespace, skillPath)` | Load a tech pack skill into context | Skill content | | `loadAgent(namespace, agentRef)` | Read agent file, parse frontmatter, resolve skills, spawn as Task subagent | Task subagent with composed prompt | | `routeCommand(namespace, command, args)` | Invoke the command router skill with structured context | Command result | | `routeSkills(namespace, phase, componentType?, agent?)` | Invoke the skills router to get relevant skills for a phase | Skills loaded into context | | `listComponents(namespace)` | Read component types from manifest | Component type list with metadata | | `dependencyOrder(namespace)` | Build topological order from dependency graph | Ordered component type list |
Core skills invoke techpacks operations using this pattern:
Invoke techpacks.readManifest for the active tech pack namespace. Read the `components` section to find the agent assigned to a given component type.
Invoke techpacks.routeSkills with: namespace: <active-namespace> phase: plan-generation component_type: <type>
Invoke techpacks.loadAgent with:
namespace: <active-namespace>
agentRef: { name: "my-agent", path: "agents/my-agent.md" }
skills: ["coding-standards", "testing-standards"]Read `sdd/sdd-settings.yaml` (or `.sdd/sdd-settings.yaml`) to find active tech packs:
techpacks:
<namespace>:
name: <tech-pack-name>
namespace: <namespace>
version: "1.0.0"
mode: internal # or external, git
path: <tech-pack-directory>For internal tech packs, resolve `path` relative to the plugin root directory. For git-mode tech packs, resolve `install_path` relative to the project root.
# Git-mode example:
techpacks:
my-pack:
name: my-pack
namespace: my-pack
version: "1.0.0"
mode: git
repo: https://github.com/org/my-pack.git
ref: v1.0.0
install_path: sdd/.techpacks/my-pack/techpack1. **Single gateway.** All core→tech-pack interactions flow through this skill. No other core file reads `techpack.yaml` directly. 2. **No direct reads.** Core skills and system commands never read tech pack skill files or agent files directly. They always go through `techpacks`. 3. **Prompt isolation.** Agent markdown bodies and resolved skill contents NEVER appear in the main conversation context. Use `system-run.sh agent frontmatter` to extract only structured metadata. Spawn agents as Task subagents with their own context. 4. **Structured logging.** Every techpacks operation logs via `system-run.sh log write --level info --source techpacks.<operation> --message "<description>"`. 5. **Fail loudly.** If a manifest is missing, invalid, or a referenced path doesn't exist, return a clear error. Never silently fall back to hardcoded defaults.
The techpacks gateway uses these system CLI commands:
| Command | Purpose | |---------|---------| | `system-run.sh tech-pack validate --path <dir>` | Validate a manifest | | `system-run.sh tech-pack info --namespace <ns>` | Read manifest data | | `system-run.sh tech-pack list` | List installed tech packs | | `system-run.sh agent frontmatter --path <file>` | Extract agent metadata (prompt isolation) | | `system-run.sh log write --level <l> --source <s> --message <m>` | Structured logging |
Structure for AI-assisted development AI coding assistants are powerful but chaotic. You prompt, you get code, but then what?
Repo: LiorCohen/sdd
Standards for authoring SDD plugin agents — frontmatter, self-containment, skill references, and no-user-interaction rules.
Standards for authoring SDD plugin commands — frontmatter, user interaction, skill/agent invocation, CLI integration, and output formatting.
Create a commit following repository guidelines with proper versioning and changelog updates.
Two-step self-review at every task lifecycle phase. Step 1 (this skill) runs in-context to gather session signals — files read vs grepped, user pushback, build…
D2 diagramming language reference for architecture diagrams, sequence diagrams, grid layouts, SQL tables, and class diagrams. Produces .d2 files rendered via…
Writes and maintains user-facing documentation for the SDD plugin. Proactively detects when docs are out of sync with plugin capabilities.