Claude Cursor opencode Skill

campaign-commit

Choose the correct commit command in a camp, also called a campaign. Use when you are about to commit and need to select `camp commit`, `camp p commit`, `fest commit`, or intentional root pointer sync via `camp refs-sync`.

LLM Mart · 0 points · 0 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download obedience-corp-festival-claude-plugin_skills_campaign-commit-01263e8.zip · 1 KB
Part of obedience-corp/festival — 60 skills

Install

skills CLI npx skills add https://github.com/Obedience-Corp/festival/tree/main/claude-plugin/skills/campaign-commit
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install obedience-corp-festival@llmmart
Git git clone https://github.com/Obedience-Corp/festival.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole obedience-corp/festival collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Camp Commit Decision

A camp was previously called a campaign; this skill applies whichever word the user uses.

Decision

  • Project change (submodule, linked project, or worktree): camp p commit -m "msg"
  • Festival task execution: fest commit -m "msg"
  • Camp root files: camp commit -m "msg" (stages all root-level changes; submodule refs excluded by default)
  • Camp root, scoped to specific paths: git add <paths> then camp commit --all=false -m "msg" (commits only what is staged)
  • Intentional root pointer sync: camp refs-sync [submodule...]

Festival Commits Cover the Linked Project

When a festival or sequence has a linked project, fest commit makes up to two commits even when you run it from inside the festival:

  • a project commit staging the project's changes, skipped when the project is clean
  • a camp root commit staging only festival-scoped files, the camp's .campaign/fest/ state, and the submodule pointer

So during festival execution do not run camp p commit first and fest commit after. One fest commit covers both sides. Use --no-root to skip the camp root commit.

A festival with no linked project makes the single camp root commit only.

Deferred Commit Queue

Camp defers its own bookkeeping commits so they do not hold the terminal. The queue is machine-local and disposable; git is the record.

camp jobs                       # what is queued, running, or failed
camp jobs --json                # same, for agents
camp jobs retry all             # requeue everything that failed
camp jobs drop <id>             # give up on a failed job, keeping its content
camp jobs drop --running <id>   # a stalled job, and the worker holding it
camp jobs drain                 # wait for every lane, then exit

Dropping a job never discards work: the content stays uncommitted in the working tree for the next ordinary commit. If camp jobs reports a job as stalled, a commit message writer stopped answering; --running is what ends that wait.

Rules

  • Never run raw git commit anywhere in a camp; staging with git add is fine.
  • Keep submodule commits and root pointer sync as separate, explicit actions.
  • Do not bypass hooks with --no-verify without clear justification.
  • Do not add agent co-author trailers unless explicitly requested.
Files (festival)
  • SKILL.md 2.5 KB
    ---
    name: campaign-commit
    description: Choose the correct commit command in a camp, also called a campaign. Use when you are about to commit and need to select `camp commit`, `camp p commit`, `fest commit`, or intentional root pointer sync via `camp refs-sync`.
    ---
    
    # Camp Commit Decision
    
    A camp was previously called a campaign; this skill applies whichever word the user uses.
    
    ## Decision
    
    - Project change (submodule, linked project, or worktree): `camp p commit -m "msg"`
    - Festival task execution: `fest commit -m "msg"`
    - Camp root files: `camp commit -m "msg"` (stages all root-level changes; submodule refs excluded by default)
    - Camp root, scoped to specific paths: `git add <paths>` then `camp commit --all=false -m "msg"` (commits only what is staged)
    - Intentional root pointer sync: `camp refs-sync [submodule...]`
    
    ## Festival Commits Cover the Linked Project
    
    When a festival or sequence has a linked project, `fest commit` makes up to two
    commits even when you run it from inside the festival:
    
    - a project commit staging the project's changes, skipped when the project is
      clean
    - a camp root commit staging only festival-scoped files, the camp's
      `.campaign/fest/` state, and the submodule pointer
    
    So during festival execution do not run `camp p commit` first and `fest commit`
    after. One `fest commit` covers both sides. Use `--no-root` to skip the camp
    root commit.
    
    A festival with no linked project makes the single camp root commit only.
    
    ## Deferred Commit Queue
    
    Camp defers its own bookkeeping commits so they do not hold the terminal. The
    queue is machine-local and disposable; git is the record.
    
    ```bash
    camp jobs                       # what is queued, running, or failed
    camp jobs --json                # same, for agents
    camp jobs retry all             # requeue everything that failed
    camp jobs drop <id>             # give up on a failed job, keeping its content
    camp jobs drop --running <id>   # a stalled job, and the worker holding it
    camp jobs drain                 # wait for every lane, then exit
    ```
    
    Dropping a job never discards work: the content stays uncommitted in the working
    tree for the next ordinary commit. If `camp jobs` reports a job as `stalled`, a
    commit message writer stopped answering; `--running` is what ends that wait.
    
    ## Rules
    
    - Never run raw `git commit` anywhere in a camp; staging with `git add` is fine.
    - Keep submodule commits and root pointer sync as separate, explicit actions.
    - Do not bypass hooks with `--no-verify` without clear justification.
    - Do not add agent co-author trailers unless explicitly requested.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related