Skills

Edit Catalog

Catalog edits in Go.

Install

npx skills add ajnart/self-host --skill edit-catalog -g -a claude-code -y
Repository
ajnart/self-host1.5k
Category
AI and agents
Updated
3d ago
License
Apache-2.0
Context cost
Lightabout 979 tokens
Runs scripts
No, instructions only

What it does

Catalog edits in Go. Use for any task that adds an App, changes an App's image, port, Compose, env, notes or StandaloneGuide (even a one-line image bump), changes a Recipe, or hides or unhides an App. Each of these changes generated site and DCM data and hand-kept App counts. DCM-only Containers go to add-container; Homarr wiring goes to docs/agents/homarr-integrations.md.

Edit the Catalog

Read CONTEXT.md for App, Recipe and Catalog, and docs/agents/generated-data.md for what is derived from what and which counts are hand-kept. For a new App, copy the shape of the last one: git show --stat ca78641b (Cleanuparr).

Pick the branch, then run its steps in order:

  • New App: steps 1 to 8.
  • Change an App: steps 1, 2, 6 and 8, plus 5 when its repository or icon changes. Edit the App's package under internal/apps/; its directory is the id without hyphens or a shorter name (paperless-ngx lives in paperlessngx), so find it with grep -rl 'ID: "<id>"' internal/apps.
  • Change a Recipe: edit registerRecipes in internal/catalog/batch_recipes.go, then steps 6, 7 and 8.
  • Hide or unhide an App: edit unavailable in internal/catalog/catalog.go with the reason and the issue that tracks the way back, then steps 6, 7 and 8.

1. Resolve upstream facts

Take the image, tag, ports, volumes and env from the project's own docs or registry page, not from memory or an aggregator.

Done: each fact has a source URL you can put in the PR body.

2. Find an existing home

Search internal/apps/, internal/catalog/, dcm/src/tools/ and ALIASES in dcm/src/lib/selfhost.ts for the product under every spelling (actualbudget against actual-budget).

Done: no hit, so you add one App, or you edit the existing App and add none. Every Container for the same product in dcm/src/tools has the App's id or an ALIASES key for it; otherwise DCM lists the product twice. Add the missing ALIASES entry in the same change.

3. Write the App

Read the whole SKILL.md on GitHub

More in AI and agents