- feynman/skills/workflow-bootstrap/SKILL.md - Bootstrap skill - feynman/memory-template.md - Memory template - feynman/README.md - Feynman configs documentation - scripts/setup.sh - Updated to auto-install Feynman configs if detected - docs/workflow/INDEX.md - Updated with Feynman integration info - README.md - Updated with Feynman integration section When running 'pnpm run setup': 1. Checks for Feynman installation 2. Installs workflow-bootstrap skill to ~/.feynman/agent/skills/ 3. Creates .feynman/memory.md from template 4. Gives two-layer nudge: skill (manual) + memory (automatic)
4.2 KiB
Workflow Template
A portable, file-based issue tracking and development workflow for teams.
Quick Start
# Clone this repo into your new project
git clone https://git.fbrns.co/shoko/workflow.git my-new-project
cd my-new-project
# Remove git history (optional, for a fresh start)
rm -rf .git
# Initialize git
git init
# Setup (installs pnpm, dependencies, pre-commit hook, and Feynman configs)
pnpm run setup
# Remove this README (it's the template's README)
rm README.md
That's it. The setup script handles everything—including installing the Feynman skill if Feynman is detected.
What This Is
- Issues are files in
/.issues/, not in external trackers - Issues are tracked by git, alongside the code they affect
- Agents think out loud in issue files, making reasoning visible
- Humans approve reasoning, not code line-by-line
- Pre-commit hooks enforce issue format before any commit
- Feynman integration for automatic workflow bootstrapping
Feynman Integration
If Feynman is installed on your system, the setup script will automatically:
- Detect the Feynman installation
- Install the
workflow-bootstrapskill - Create
.feynman/memory.mdwith workflow preferences
This gives you a two-layer nudge system:
- Skill (manual trigger): Say "feynman, set up the workflow" for new projects
- Memory (automatic nudge): Feynman reminds you if you forget
Requirements
- Node.js (recommended: https://nodejs.org)
- If you don't have Node.js, the setup script will install
pnpmusingcorepackornpm
- If you don't have Node.js, the setup script will install
- Git
- Feynman (optional, for automatic workflow bootstrapping)
No other dependencies required for the workflow itself.
File Structure
/
├── docs/workflow/ # Workflow documentation
│ ├── INDEX.md ← Start here
│ ├── ISSUE-FORMAT.md ← Issue file format
│ ├── WORKFLOW.md ← Step-by-step process
│ └── AGENT-PROMPTS.md ← Copy-paste agent prompts
├── .issues/ # Issue files
│ ├── INDEX.md # List of all issues
│ └── example/ # Example issues
├── .hooks/ # Pre-commit validators
│ └── issue-linter.js # Issue format validator
├── scripts/
│ └── setup.sh # Setup script
└── package.json # Setup commands
Setup Command
pnpm run setup
This will:
- Check for
pnpm, install it if missing (via corepack or npm) - Install dependencies
- Install the pre-commit hook in
.git/hooks/
If Node.js isn't installed, the script will tell you to install it first.
Manual Setup (Without pnpm)
If you prefer not to use pnpm:
# 1. Install Node.js from https://nodejs.org
# 2. Install pnpm
npm install -g pnpm
# 3. Install dependencies
pnpm install
# 4. Manually install pre-commit hook
mkdir -p .git/hooks
cat > .git/hooks/pre-commit << 'EOF'
#!/bin/bash
node .hooks/issue-linter.js
EOF
chmod +x .git/hooks/pre-commit
For Teams
This template is maintained at: https://git.fbrns.co/shoko/workflow
To update the template for all projects:
- Pull latest changes from this repo
- Merge into your project
Documentation
Troubleshooting
"pnpm not found" during setup
The setup script tries to install pnpm automatically. If it fails:
# Install Node.js first
# Then enable pnpm via corepack
corepack enable
corepack prepare pnpm@latest --activate
# Or install via npm
npm install -g pnpm
# Re-run setup
pnpm run setup
Pre-commit hook not running
# Make sure the hook is executable
chmod +x .git/hooks/pre-commit
# Test the hook manually
node .hooks/issue-linter.js
"git commit rejected" errors
The pre-commit hook is rejecting your commit because:
- Code changed without a corresponding issue file
- Issue file is missing required fields
- Issue has
donestatus but is incomplete
Fix the issue file and try again. Run node .hooks/issue-linter.js for details.
License
Internal use. See https://git.fbrns.co/shoko/workflow