harrisonhjohnson/productagent · /harnesses/loops/settings.json
000%

settings.json

view on github ↗116 lines · json
{
  "permissions": {
    "allow": [
      "Skill(launch-business)",
      "Skill(brand)",
      "Skill(growth)",
      "Skill(finance)",
      "Skill(pm)",
      "Agent(*)",
      "Read(//Users/YOU/ventures/**)",
      "Edit(//Users/YOU/ventures/**)",
      "Read(//Users/YOU/.claude/skills/**)",
      "WebSearch",
      "WebFetch",
      "Bash(ls:*)",
      "Bash(cat:*)",
      "Bash(head:*)",
      "Bash(tail:*)",
      "Bash(wc:*)",
      "Bash(rg:*)",
      "Bash(grep:*)",
      "Bash(find:*)",
      "Bash(date:*)",
      "Bash(jq:*)",
      "Bash(git status:*)",
      "Bash(git diff:*)",
      "Bash(git log:*)",
      "Bash(git show:*)",
      "Bash(git branch:*)",
      "Bash(git -C:*)",
      "Bash(node:*)",
      "Bash(python3:*)",
      "Bash(make:*)",
      "Bash(pnpm build:*)",
      "Bash(pnpm run build:*)",
      "Bash(pnpm test:*)",
      "Bash(pnpm typecheck:*)",
      "Bash(npm run build:*)",
      "Bash(npm run test:*)",
      "Bash(npm test:*)",
      "Bash(npx vitest:*)",
      "Bash(curl -sI https://*)",
      "Bash(curl -s https://*)",
      "Bash(source:*)",
      "Bash(cp:*)",
      "Bash(mv:*)",
      "Bash(mkdir:*)",
      "Bash(sed:*)",
      "Bash(awk:*)",
      "Bash(cd:*)",
      "Bash(file:*)",
      "Bash(stat:*)"
    ],
    "deny": [
      "Bash(git push:*)",
      "Bash(git remote:*)",
      "Bash(git merge:*)",
      "Bash(git rebase:*)",
      "Bash(git reset:*)",
      "Bash(git clean:*)",
      "Bash(git filter-branch:*)",
      "Bash(git switch:*)",
      "Bash(git checkout:*)",
      "Bash(git commit:*)",
      "Bash(git add:*)",
      "Bash(git stash:*)",
      "Bash(gh pr:*)",
      "Bash(gh release:*)",
      "Bash(gh repo:*)",
      "Bash(gh api:*)",
      "Bash(gh workflow:*)",
      "Bash(gh secret:*)",
      "Bash(gh auth:*)",
      "Bash(bash:*)",
      "Bash(sh:*)",
      "Bash(zsh:*)",
      "Bash(eval:*)",
      "Bash(xargs:*)",
      "Bash(env:*)",
      "Bash(rm:*)",
      "Bash(sudo:*)",
      "Bash(pmset:*)",
      "Bash(launchctl:*)",
      "Bash(defaults:*)",
      "Bash(security:*)",
      "Bash(osascript:*)",
      "Bash(open:*)",
      "Bash(mail:*)",
      "Bash(sendmail:*)",
      "Bash(curl -X:*)",
      "Bash(curl -d:*)",
      "Bash(npm publish:*)",
      "Bash(pnpm publish:*)",
      "Bash(npm install -g:*)",
      "Bash(brew:*)",
      "Bash(pip install:*)",
      "Bash(stripe:*)",
      "Edit(//Users/YOU/ventures/00-ops/**)",
      "Edit(//Users/YOU/ventures/pm/CHARTER.md)",
      "Edit(//Users/YOU/ventures/pm/ORDERS.md)",
      "Edit(//Users/YOU/ventures/pm/LOOPS.md)",
      "Edit(//Users/YOU/ventures/.claude/settings.json)",
      "Edit(//Users/YOU/ventures/<NNN>-venture-with-its-own-deploy/**)",
      "Edit(//Users/YOU/.claude/**)",
      "Edit(//Users/YOU/.claude.json)",
      "Edit(//Users/YOU/Library/LaunchAgents/**)",
      "Read(//Users/YOU/.ssh/**)",
      "Read(//Users/YOU/.aws/**)",
      "Read(//Users/YOU/**/.env)",
      "mcp__<email-server>__send_message",
      "mcp__<email-server>__reply",
      "mcp__<email-server>__forward",
      "mcp__<any-broker-or-deploy-server>__authenticate"
    ]
  }
}
flow-designflow-designwhat this folder doesA progressive design interview: one question per screen, ending in a clickable HTML prototype of a linear user journey (onboarding, checkout, wizard).global
SKILL.md74 lines
loopsloopswhat this folder doesGive an agent a goal, a budget, a cadence and a model. It works one bounded run at a time while you sleep, inside a fence, and hands you four plain sentences in the morning.system
README.md178 lines
init.sh171 lines
install.sh144 lines
loops-spec.md244 lines
MACHINE.md161 lines
settings.json116 lines
prototype-swarmprototype-swarmwhat this folder doesCrawls a multi-screen HTML prototype for undefined click destinations and spawns one generator agent per missing screen, with a handoff packet written by the source screen, until the click graph is covered.global
SKILL.md162 lines
self-maintenanceself-maintenancewhat this folder doesThe one way an unattended run may touch its own loop registry, and the one place a "need from you" becomes a decision you settle with a single command instead of a paste.system
README.md126 lines
loopctl.py599 lines
loops_registry.py122 lines
pm-strategistpm-strategistwhat this folder doesA product and strategy advisor agent that blends three lenses (build taste, business structure, PM execution) and pressure-tests ideas instead of cheerleading.global
pm-strategist.md51 lines
todotodowhat this folder doesA TODO list for PMs in one markdown file, reachable from Claude Code and from Telegram: capture, see what's due, triage, and hand items to an agent that asks before it acts.system
README.md59 lines
README.md68 lines