mcpField
E
easy-cheese-setup

easy-cheese-setup

github.com/paulnsorensenAgent workflows19495 installsUpdated 6d ago
Repository

About easy-cheese-setup

easy-cheese-setup is a skill for interactively registering the Hallouminate durable corpus and repository tenants. It is intended for users setting up searchable project artifacts across sessions, with a report-first, confirmation-based process for changes.

Key features

  1. 01Previews changes with doctor
  2. 02Registers the durable corpus
  3. 03Registers repository tenants
  4. 04Indexes .cheese artifact directories
  5. 05Requires confirmation and --apply for changes

Use cases

  1. 01Set up a searchable corpus across sessions
  2. 02Register a repository containing .cheese artifacts
  3. 03Add artifact directories to the machine-wide corpus
  4. 04Review planned registration repairs before applying

MCP support

The skill requires the Hallouminate MCP server to be installed; it controls the interactive registration process.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/paulnsorensen/easy-cheese --skill easy-cheese-setup

After installing, type/easy-cheese-setupin Claude Code to confirm it loaded.

Bundled filesreferences/commands.mdwedge.toml

Details

From the project README

/easy-cheese-setup

Register the durable cheese-durable Hallouminate corpus. The corpus makes each project's XDG artifacts searchable across sessions.

Register the current repository as a Hallouminate tenant when the user requests it. This process is idempotent. It does not delete data.

The engine is a self-contained bundle at skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz. It has four commands. Each command changes data only with --apply. Without this option, each command only reports.

python3 skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz global    [--apply]                     # durable-corpus registration/repair
python3 skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz local     [--apply]                     # per-repository tenant registration
python3 skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz artifacts [--apply] [--root PATH ...]    # register every .cheese dir as one corpus
python3 skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz doctor    [--apply]                     # all three legs

Install the Hallouminate MCP server first. See README.md § Installing MCP servers. This skill controls the interactive registration process.

Flow

Run doctor without --apply first. It reports the planned actions for all three legs without changes. Show the report as evidence. Ask the user for confirmation. Apply only the approved legs.

Global leg — durable corpus
  • Create the directory from paths.corpus_home() if it does not exist. This action prevents Hallouminate issue #101.

  • Insert or replace the marked [[corpus]] block in the Hallouminate configuration file.

  • Read config_path() for that file. Its default is ~/.config/hallouminate/config.toml.

  • HALLOUMINATE_CONFIG and XDG_CONFIG_HOME override that default. Do not assume the default path.

  • Use # >>> easy-cheese:cheese-durable as the start marker.

  • Use # <<< easy-cheese:cheese-durable as the end marker. Write the identifier in both markers.

  • An end marker without the identifier does not close the block. The rewrite then replaces the rest of the file.

  • Point the block at corpus_home(). A second global --apply leaves the file unchanged.

  • Use --apply to correct a marked block that points elsewhere.

  • Legacy migration requires user interaction. An unmarked cheese-global → ~/.cheese block is stale. Show the report. Ask the user for confirmation. Then use the explicit migration option. The installer never uses this option:

    python3 skills/easy-cheese-setup/scripts/easy-cheese-setup.pyz global --migrate-legacy --apply
    

    Leave a cheese-global block unchanged if it points anywhere except ~/.cheese.

Local leg — repository tenant
  • Run hallouminate init-repo <name> --path <main-root> when both required conditions are true. The repository must have .cheese/ artifacts. It must not have a Hallouminate tenant.
  • Register the main repository root. Do not register a worktree. This rule prevents a temporary path from replacing the tenant identity.
Artifacts leg — machine-wide .cheese corpus

Run artifacts after new repositories accumulate .cheese artifacts worth searching. Hallouminate indexes a gitignored .cheese dir only when a paths entry names that dir directly, so the block lists each .cheese directory, not a shared parent root. A paths entry that no longer exists on disk makes the daemon skip the whole corpus with a warning. A complete scan removes missing entries; an incomplete scan reports an error and leaves the block unchanged. After an --apply that changes the file, run hallouminate daemon restart, then hallouminate index --corpus cheese-artifacts.

Rules

  • Detect the current state. Report proposed changes. Ask the user for confirmation. Require --apply for each operation that changes data.
  • Use the imported paths.corpus_home() as the only source for the durable root. Do not hardcode ~/.cheese or an XDG path.
  • Do not delete data by default.
  • global --apply rewrites the marked block. It also creates the corpus directory.
  • Remove a legacy block only after user confirmation.

See the generated bundle command inventory in references/commands.md.

Comments

Markdown supported