Take a repo that has no Claude Code configuration and set it up the way a real project would: project memory so Claude knows the codebase, one custom slash command for a task you repeat, and a permissions allowlist so common actions run without prompting. This brings together the project memory, custom commands, and permissions topics you worked through earlier.
Run this to drop the repo at /root/setupme/:
curl -fsSL https://raw.githubusercontent.com/Esc-Bash/project-init-scripts/main/claude-code/project-3/init.sh | bash
It is a tiny Python project (app.py and greetings.py) with no .claude
configuration yet. Have a look so you know what you are configuring.
Land these exact files in the repo:
/root/setupme/CLAUDE.md - project memory describing what the code does and
how to run it. Do not leave it empty./root/setupme/.claude/commands/<name>.md - one custom slash command. The
markdown body is the prompt it runs (for example, a /run command that runs
the app and reports the output)./root/setupme/.claude/settings.json - a settings file with a
permissions.allow array holding at least one rule string, for example
"Bash(python3:*)".Start the console in the repo so memory and settings apply here:
cd /root/setupme
claude
Running /init generates a first CLAUDE.md from the code. For the custom
command, create the folder and file yourself:
mkdir -p /root/setupme/.claude/commands
A settings file with an allowlist looks like this:
{
"permissions": {
"allow": ["Bash(python3:*)"]
}
}
Adjust the rules to fit the project. You can also open /permissions in the
console to review what is allowed.
The repo now carries a non-empty CLAUDE.md, at least one command markdown file
under .claude/commands/, and a .claude/settings.json whose
permissions.allow array has at least one rule. The checks confirm each piece.
Press Submit once the CLAUDE.md, the custom command, and the allowlist are all in place.
Your lab setup
This VM comes with Claude Code preinstalled and signed in - just run claude to start.
Start the lab on the right to run checks.