{"slug":"campaign-structure-4","title":"campaign-structure","summary":"Orient within a camp's directory structure. Use when deciding where work belongs (intents vs festivals vs design vs docs vs dungeon), especially when a task is not yet planned or folder ownership is unclear.","platform":"opencode","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-09-15T18:24:30.546889Z","repo":{"url":"https://github.com/Obedience-Corp/festival","stars":50,"forks":4,"license":"Apache-2.0","updatedAt":"2026-09-17T18:02:45Z"},"bodyHtml":"<hr>\n<h2>name: campaign-structure\ndescription: Orient within a camp's directory structure. Use when deciding where work belongs (intents vs festivals vs design vs docs vs dungeon), especially when a task is not yet planned or folder ownership is unclear.</h2>\n<h1>Camp Structure</h1>\n<p>A camp was previously called a campaign; the layout below is the same either way.</p>\n<h2>Placement Rules</h2>\n<ul>\n<li>Raw idea / bug / future work / quick capture: <code>.campaign/intents/inbox/</code> (use <code>camp intent add</code>)</li>\n<li>Enriching or preparing for execution: <code>.campaign/intents/active/</code></li>\n<li>Ready for structured work: <code>.campaign/intents/ready/</code> → promote to festival</li>\n<li>Structured multi-phase execution: <code>festivals/</code></li>\n<li>Internal design, architecture, or deep exploration: <code>workflow/design/</code></li>\n<li>User-facing documentation: <code>docs/</code></li>\n<li>Research, analysis, and exploration notes: <code>workflow/explore/</code></li>\n<li>Archive / defer / killed: <code>.campaign/intents/dungeon/</code> or top-level <code>dungeon/</code></li>\n</ul>\n<h2>Critical Distinctions</h2>\n<ul>\n<li><code>.campaign/intents/</code> (especially <code>inbox/</code>) is the primary capture surface for new ideas, bugs, and tasks.</li>\n<li><code>workflow/design/</code> is for thoughtful internal design documents and specs.</li>\n<li><code>festivals/</code> is for planned, phased execution (not raw ideas).</li>\n<li><code>docs/</code> is user-facing; <code>workflow/explore/</code> is internal.</li>\n</ul>\n<p>Canonical reference: <code>.campaign/intents/OBEY.md</code></p>\n<h2>Layout Snapshot (Current)</h2>\n<pre><code>.campaign/\n├── intents/          # Idea capture (inbox / active / ready / dungeon)\n│   └── OBEY.md       # Authoritative intent guide\n├── quests/           # Long-lived working contexts\n└── skills/           # Camp-specific agent skills (loaded at runtime)\n\nprojects/             # Git submodules (the actual codebases)\nworkflow/\n├── code_reviews/\n├── pipelines/\n├── design/           # Design documents &amp; specs\n└── explore/          # Historical research notes\n\nfestivals/            # Festival methodology (planning + active)\ndocs/                 # User-facing documentation\ndungeon/              # Top-level archive\n</code></pre>\n<h2>Common Mistakes</h2>\n<ul>\n<li>Putting raw ideas directly into <code>festivals/</code> or <code>workflow/design/</code> without going through intents first.</li>\n<li>Treating <code>docs/</code> as the place for internal specs (use <code>workflow/design/</code> or <code>.campaign/intents/</code>).</li>\n<li>Creating ad-hoc top-level directories instead of using the established taxonomy.</li>\n<li>Forgetting that <code>cgo i</code> now navigates to <code>.campaign/intents/</code>.</li>\n</ul>\n","files":[{"path":"SKILL.md","sizeBytes":2402,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-09-15T18:26:36.642212Z","sha256":"BE849C3EC57767399454130F736845646063816EC99E61255240D4BEB4F7DDFD","sizeBytes":1192},"review":null,"source":{"repositoryUrl":"https://github.com/Obedience-Corp/festival","path":".opencode/skills/campaign-structure","license":"Apache-2.0","commit":"f98f3bc3c253979fbed3935eb077e5148708e250","subtreeSha":"234E9E018CE6C57FB3A03849A09606CC5AC89E0CFA901296DA5115E452530C56","lastSyncedAt":"2026-09-21T13:50:25.184326Z"},"reviewedAt":"2026-09-15T18:32:32.58402Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/Obedience-Corp/festival/tree/main/.opencode/skills/campaign-structure"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install obedience-corp-festival@llmmart"},{"target":"git","command":"git clone https://github.com/Obedience-Corp/festival.git"}]}