Skip to content
Back to skills

Easy Cheese Setup

ASecurity

Register the durable `cheese-durable` Hallouminate corpus. Repair the durable corpus when its configuration changes. Register the repository tenant. Repair the repository tenant when its configuration changes. Use this skill when the user requests durable corpus setup or repair. Use it when the user requests repository tenant registration. Also use it when the user invokes /easy-cheese-setup. Use the wiki skills for general Hallouminate wiki work. Use scripts/install.sh to install the MCP ser...

  • 18 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 19, 2026
developmentpythonbashgit

Works with

  • mcp

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 27, 2026

npx -y skills add paulnsorensen/easy-cheese --skill easy-cheese-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Easy Cheese Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Easy Cheese Setup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/paulnsorensen-easy-cheese-setup/badge)](https://www.skillsdirectory.com/skills/paulnsorensen-easy-cheese-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: easy-cheese-setup
description: >
  Register the durable `cheese-durable` Hallouminate corpus.
  Repair the durable corpus when its configuration changes.
  Register the repository tenant.
  Repair the repository tenant when its configuration changes.
  Use this skill when the user requests durable corpus setup or repair.
  Use it when the user requests repository tenant registration.
  Also use it when the user invokes /easy-cheese-setup.
  Use the wiki skills for general Hallouminate wiki work.
  Use scripts/install.sh to install the MCP server.
license: MIT
---

# /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
```

At installation, `install.sh` calls `global --apply` when `--mcp` includes `hallouminate`. This skill controls the interactive 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:

  ```bash
  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`](references/commands.md).

Files in this skill

  • SKILL.md3.9 KB
  • references/commands.md716 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.