jpm-cli
v1.0.3
Published
Jatrick Project Manager (JPM) - Spec-Driven Development CLI for AI Agents
Maintainers
Readme
JPM-CLI: Just Project Manager
JPM (Jatrick Project Manager) is a Spec-Driven Development CLI designed to streamline the workflow of AI Agents and Human Developers. It enforces a strict "Plan → Design → Split → Sync" methodology to ensure code quality and project consistency.
🌟 Why JPM?
- 🧠 Spec-Driven: No more coding without a plan. PRD and Architecture artifacts are mandatory.
- ⚡ AI-Powered: Uses Google Gemini to generate high-quality specs and task breakdowns.
- 🤝 GitHub Sync: Decomposes big features into "Parent Issues" with trackable Tasklists.
- 🛡️ Master Rule Enforcement: Enforces your project's
JPM_MASTER.mdrules (Tech Stack, Naming, Design) on every AI generation.
📦 Installation
Install globally via NPM:
npm install -g jpm-cliConfiguration (Important!)
JPM requires a Google Gemini API Key. You can set this up easily:
- Run the config command:
(This opens the global installation directory)jpm config - Create or duplicate
.envfile in that folder. - Add your key:
JPM_API_KEY=your_gemini_api_key_here
🚀 Zero to Hero Workflow
1. Initialize a Project
Go to your project folder and wake up JPM.
mkdir my-super-app
cd my-super-app
jpm initCreates .jpm/ structure and JPM_MASTER.md. Edit JPM_MASTER.md to define your stack!
2. Plan a Feature (The "What")
Generate a Product Requirement Document (PRD).
jpm plan "User Authentication"3. Design the System (The "How")
Create a technical architecture based on the PRD.
jpm design "User Authentication"4. Split into Tasks (The "Steps")
Break the architecture down into atomic, developer-ready tasks.
jpm split "User Authentication"5. Sync to GitHub (The "Management")
Push your tasks to GitHub Issues (requires gh CLI).
jpm sync🧹 Maintenance
Clean up cache and backups to save space:
jpm clean🛠️ Tech Stack
- Runtime: Node.js
- Language: TypeScript
- AI: Google Gemini (via
@google/generative-ai) - CLI Tools:
inquirer,ora,boxen,commander
👨💻 Development
If you want to contribute to JPM or modify it locally:
Clone & Install:
git clone https://github.com/Jpatrick-Phan/JPM.git cd JPM npm installLinting & Formatting: We use ESLint and Prettier. Run this before committing:
npm run lint # Check for issues npm run lint -- --fix # Auto-fix issuesTesting: Run the test suite (Core + CLI Integration):
npm testLocal Build:
npm run build # Test your local build: node dist/src/index.js -h
Made with ❤️ by Jatrick
