architecture-principle…
Architecture principles for manifest-dev: how its maintainer wants skills, wrappers, references, state and the workflow…
Sync the prompt-engineering plugin from a local clone of claude-code-plugins into .claude/ so the repo is self-contained for isolated/web environments. Copies agents/skills, removes only previously-synced items that disappeared upstream. Other content in .claude/ is left alone.
Claude Code
$ npx -y skills add doodledood/manifest-dev --skill sync-claude-code-plugins --agent claude-code
Codex
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a codex -y
Cursor
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a cursor -y
Gemini CLI
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a gemini-cli -y
GitHub Copilot
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a github-copilot -y
OpenCode
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a opencode -y
Windsurf
$ npx skills add doodledood/manifest-dev --skill sync-claude-code-plugins -a windsurf -y
name: sync-claude-code-plugins description: 'Sync the prompt-engineering plugin from a local clone of claude-code-plugins into .claude/ so the repo is self-contained for isolated/web environments. Copies agents/skills, removes only previously-synced items that disappeared upstream. Other content in .claude/ is left alone. Use when asked to sync claude-code-plugins, pull prompt-engineering, refresh prompt-engineering plugin.' user-invocable: true metadata: internal: true
**User request**: $ARGUMENTS
Sync prompt-engineering plugin components from a local sibling clone of `claude-code-plugins` into this repo's `.claude/` directory. The plugin OWNS only the files it ships — other content in `.claude/agents/` and `.claude/skills/` (manifest-dev sync, KB skills, anything else) must be left alone.
| Role | Path | |------|------| | Source repo | `../claude-code-plugins` (relative to this repo's root) | | Source components | `<source_repo>/claude-plugins/prompt-engineering/` | | Target | `.claude/` in this repo | | Tracking file | `.claude/.claude-code-plugins-sync.json` |
| Component | Source dir | Target dir | |-----------|-----------|------------| | Agents | `agents/` | `.claude/agents/` | | Skills | `skills/` | `.claude/skills/` |
prompt-engineering ships no hooks today.
**Deletion invariant**: only items in `tracked` (the previously-synced set) are eligible for removal when they disappear upstream. Items never in `tracked` are invisible — that's how project-local content stays safe.
The tracked set lives in `.claude/.claude-code-plugins-sync.json`:
{
"version": 1,
"last_synced_at": "ISO-8601 timestamp",
"agents": ["<agent-file>.md", "..."],
"skills": ["<skill-dir>", "..."]
}First run (file missing): `tracked` is empty, no deletions happen, file is written at end.
Pre-flight: if the source is a clean git repo, `git pull --ff-only` first; surface a warning and proceed if pulling fails.
Then, when `<source_repo>/claude-plugins/prompt-engineering/` is missing, decide which of two different situations produced that one signal before doing anything else. A misconfigured path and a retired-upstream plugin look identical from the target side, and treating retirement as misconfiguration is what strands a retirement: the tracked items stay forever, because the only machinery that could remove them refuses to run.
When the evidence for removal is not available — no access to the source repo's history, or history that does not settle it — take the misconfigured-path branch. Aborting costs a stale copy that a later run fixes; deleting on a wrong reading costs files no run restores.
For each component (agents/skills):
Source listing excludes `README.md` and `.claude-plugin/` (plugin metadata, not content).
**Retirement denylist** (never copy or track, regardless of upstream):
| Component | Why it may not come back | |-----------|--------------------------| | `skills/prompt-engineering` | manifest-dev-tools ships its own, as a plugin-owned symlink at `.claude/skills/prompt-engineering` | | `agents/prompt-reviewer.md` | manifest-dev ships **zero agents**; `review-prompt` covers the capability as a plugin-owned symlink at `.claude/skills/review-prompt` | | `agents/prompt-compression-verifier.md` | retired upstream 2026-08-17 | | `agents/prompt-token-efficiency-verifier.md` | retired upstream 2026-08-17 | | `skills/auto-optimize-prompt` | retired upstream 2026-08-17 | | `skills/compress-prompt` | retired upstream 2026-08-17 | | `skills/optimize-prompt-token-efficiency` | retired upstream 2026-08-17 |
The last five were retired as *capability lost, not capability moved* — there is no replacement to point at, and an older upstream checkout that still ships them must not reintroduce them. All seven are already dropped from the tracked set.
After each sync, ensure `.agents/skills/<name>` is a symlink to `../../.claude/skills/<name>` for every tracked skill, and remove the symlink for any skill removed from `tracked`. This lets non-Claude coding agents (Codex, etc.) read the sam
Hand your agent a task. Get back work you can trust. manifest-dev is a set of free, open-source skills for coding agents.
Architecture principles for manifest-dev: how its maintainer wants skills, wrappers, references, state and the workflow…
Ship a change to a file setup-project copies or emits into projects (ADR_FORMAT.md, NORTH_STAR_FORMAT.md, the verification…
Design principles for manifest-dev: how its maintainer wants the visual and interaction design guidance the plugin ships, and the…
Harden a manifest-dev task guidance file for one-shot quality — either /define''s quality-gate/Default set or figure-out''s probe…
Analyze Claude Code sessions to learn what went right/wrong and suggest high-confidence improvements to skills. Use when asked to…
The red-flag lists mirrored between figure-out''s and define''s task files, so a change to one side lands on the other. Use when…
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.