Repository navigation
How to install
Designed to work with any AI coding assistant that reads AGENTS.md. Built and tested on Claude Code; other assistants are untested.
Your app needs git (git init if it has none) and no uncommitted changes. You also need bash (on Windows it comes with Git for Windows) and gitleaks ≥ 8.18.0, except 8.19.0, which can't scan: use 8.19.1 or later (macOS: brew install gitleaks; Windows: winget install gitleaks).
Option 1: the skill. In your app's folder, run:
npx skills add Freakling/App-Director
That installs the app-director skill for the assistant you choose in the prompt; in Claude Code it becomes the /app-director slash command. Ask your assistant to set up App Director. The skill fetches the latest App Director release outside your app and runs onboarding. To pick up a newer release later, run the command again.
Option 2: the Claude Code plugin. In Claude Code:
/plugin marketplace add Freakling/App-Director
/plugin install app-director@app-director
The plugin installs the latest release. Then open a new Claude Code session in your app's folder (or run /reload-plugins), and run /app-director:app-director.
Option 3: manual install. Clone the latest release next to your app as App-Director/. The release's tag is v followed by its version number (v1.7.1 for this release), and the Releases page shows the latest one; replace <tag> in this command with it:
git clone --branch <tag> --depth 1 https://github.com/Freakling/App-Director.git App-Director
Then ask your assistant:
Read App-Director/ONBOARDING.md and follow it to install App Director into this project.
Either way, onboarding works out whether this is a new app, an existing app or an upgrade. It installs the files and sets up the toolchain, interviews you (new app) or reads the existing code, agrees with you who owns what, and ends with one commit for you to approve. Afterwards, restart Claude Code so the new commands load.
Upgrading: run /app-director (or /app-director:app-director with the plugin), or ask your assistant to run onboarding. It detects the existing install and carries out the upgrade steps of each CHANGELOG entry newer than your version, in order.
Upgrading the plugin: run /plugin marketplace update app-director and then /plugin update app-director@app-director. Restart Claude Code, open a new session in your app's folder, and run /app-director:app-director again.
What's changed
- An install from a development snapshot says so. An install from a source whose
CHANGELOG.mdhas entries under## Unreleasedrecords# app-director <version> + unreleased (<commit>)as the manifest's first line, and its closing lines say it is a development snapshot, not a release, with where the latest release is listed.VERSIONstays at the last release until a release is cut, so the manifest tells the truth. The commit comes from the source's git checkout (a release zip has none) and goes on a# source <commit>line, which release installs get too. An install from a release records the plain version. Upgrades read the old version without the suffix, so an upgrade from a snapshot works.- Upgrade steps: none needed. The next upgrade rewrites the manifest.