Ingvar Workflow Kit - AI-powered CLI tool with multi-agent orchestration following Ingka Way of Working. Named after Ingvar Kamprad (IKEA founder), supports 4 AI assistants (Copilot, Cursor, Cline, Codeium), features intelligent task routing, specialized
npm install ingvar-workflow-kit
Transform your development workflow with Ingka Way of Workingβintelligent task routing, spec-first development, and automated GitHub Projects integrationβall from your terminal.
Named after Ingvar Kamprad, founder of IKEA, embodying simplicity, efficiency, and quality in software development.
Your Development Request
β
βΌ
ββββββββββββββββββββββββββββββββββββββββββββ
β ποΈ Orchestrator Agent β
β Analyzes Keywords, Files & Intent β
ββββββββββββ¬ββββββββββββββββββββββββββββββββ
β
ββββββββββββββββ¬ββββββββββββΌββββββββββββ¬βββββββββββββββ¬βββββββββββββββ
β β β β β β
βΌ βΌ βΌ βΌ βΌ βΌ
βββββββββββ βββββββββββ βββββββββββ βββββββββββ ββββββββββββ ββββββββββββ
β π¨ Frontβ β βοΈ Back β β π Dev β β π§ͺ Test β β π Docs β β π§ Configβ
β -end β β -end β β Ops β β -ing β β β β β
β Expert β β Expert β β Expert β β Expert β β Expert β β Manager β
βββββββββββ βββββββββββ βββββββββββ βββββββββββ ββββββββββββ ββββββββββββ
UI/UX APIs CI/CD Quality Guides Settings
Components Database Deploy Coverage API Docs Projects
`
π View Full Architecture Diagram
---
β¨ Core Features
$3
Ingvar v1.0 features an intelligent orchestration system with specialized agents:
#### Orchestrator Agent (Router & Coordinator)
- Analyzes every request to determine task type
- Routes to appropriate specialist agent(s)
- Coordinates multi-agent tasks
- Enforces Ingka workflow standards
#### Frontend Agent (UI/UX Specialist)
- Component-first architecture (Atomic Design)
- Accessibility compliance (WCAG 2.1 AA)
- Mobile-first responsive design
- Performance optimization (Core Web Vitals)
- SEO best practices
Triggers: component, UI, style, design, responsive, accessibility
#### Backend Agent (API & Database Specialist)
- RESTful API design
- Database optimization
- Authentication & security
- Input validation
- Error handling
Triggers: API, endpoint, database, auth, query, security
#### DevOps Agent (Infrastructure Specialist)
- CI/CD pipeline setup
- Docker containerization
- Cloud deployment (AWS, Azure, Railway)
- Monitoring & logging
- Environment configuration
Triggers: deploy, CI/CD, Docker, pipeline, infrastructure
#### Testing Agent (Quality Assurance Specialist)
- Unit testing strategies
- Integration tests
- E2E test automation
- Code coverage analysis
- Test-driven development
Triggers: test, spec, coverage, mock, fixture
#### Documentation Agent (Technical Writer)
- README maintenance
- API documentation
- User guides
- Code comments (JSDoc)
- Changelog management
Triggers: documentation, README, guide, comment, docs
$3
Ingvar works seamlessly with 4 major AI assistants:
- β
GitHub Copilot (.github/copilot-instructions.md)
- β
Cursor AI (.cursorrules)
- β
Cline (.clinerules)
- β
Codeium (.codeium/instructions.md)
Smart Sync: When you enable/disable agents, all AI instruction files update automatically.
$3
Ingvar enforces a smart decision tree for complex work:
`
βββββββββββββββββββββββββββββββββββββββ
β New Feature Request Arrives β
ββββββββββββββββ¬βββββββββββββββββββββββ
β
βΌ
ββββββββββββββββ
β Effort > 1wk?β
ββββββββ¬ββββββββ
β
ββββββββ΄ββββββββ
β β
YES NO
β β
βΌ βΌ
ββββββββββββ ββββββββββββ
β Create β β Create β
β SPEC β β Issue β
β First β β Directly β
ββββββββββββ ββββββββββββ
β β
βΌ βΌ
ββββββββββββ ββββββββββββ
β Get β β Start β
β Approval β β Work β
ββββββββββββ ββββββββββββ
β
βΌ
ββββββββββββ
β Break β
β into β
β Issues β
ββββββββββββ
`
Benefits:
- π Simple tasks move fast (< 1 day β immediate implementation)
- ποΈ Complex features get structured planning (> 1 week β spec review)
- π Better estimates and clearer expectations
- π― Reduced scope creep and missed requirements
$3
Ingvar automatically syncs with GitHub Projects:
1. Issue Creation: Automatically creates GitHub issues with proper labels
2. Status Tracking: Updates project board as work progresses
3. Auto-Close: Issues close when PRs merge with "Closes #123"
4. Label Management: Sets up comprehensive label system (P0-P3, types, status)
Supported Project Layouts:
- β
Basic Kanban (Todo, In Progress, Done)
- β
Agile Sprint (Backlog, Todo, In Progress, Review, Done)
- β
Custom columns (auto-detected)
$3
8 production-ready templates following Ingka standards:
1. Bug Report: Detailed reproduction steps, environment info
2. Feature Request: User stories, acceptance criteria, mockups
3. Documentation: Gaps identified, target audience, scope
4. Security Vulnerability: CVSS scoring, impact assessment
5. Performance Issue: Metrics, profiling data, thresholds
6. Accessibility: WCAG level, affected users, severity
7. Refactoring: Technical debt assessment, migration plan
8. Deployment: Rollout strategy, rollback plan, monitoring
$3
Auto-configured labels with semantic meaning:
Priority (P0-P3):
- P0 π΄ Critical (production down, data loss)
- P1 π High (major feature broken)
- P2 π‘ Medium (minor bug, enhancement)
- P3 π’ Low (nice-to-have, polish)
Type (Feature, Bug, Docs, etc.):
- feature β¨ New functionality
- bug π Something broken
- docs π Documentation
- refactor π§ Code improvement
- security π Vulnerability
- performance β‘ Speed/efficiency
Status (Workflow stages):
- needs-review π Awaiting review
- in-progress π§ Active work
- blocked π« Dependencies
---
π¦ Installation
$3
`bash
npm install -g ingvar-workflow-kit
`
$3
`bash
ingvar --version
`
$3
`bash
Navigate to your project
cd your-project
Initialize Ingvar workflow (one-time setup)
ingvar init
`
What ingvar init does:
1. β
Sets up docs/specs/ directory
2. β
Installs 8 professional issue templates
3. β
Configures comprehensive label system
4. β
Creates .ingvarrc.json configuration
5. β
Installs AI assistant instructions (Copilot, Cursor, Cline, Codeium)
6. β
Links to GitHub Projects (optional)
Time: ~5 minutes (vs 2-4 hours manual setup)
---
π Quick Start
$3
`bash
npm install -g ingvar-workflow-kit
`
$3
`bash
cd your-project
ingvar init
`
$3
`bash
Authenticate with GitHub CLI (if not already)
gh auth login
Configure your repository in .ingvarrc.json
ingvar config github.owner your-org
ingvar config github.repo your-repo
`
$3
`bash
ingvar issue
`
Interactive prompt:
1. Choose template (bug, feature, docs, etc.)
2. Fill in details
3. Assign priority (P0-P3)
4. Auto-creates GitHub issue
5. Auto-links to GitHub Project
6. Status tracked automatically
$3
GitHub Copilot / Cursor / Cline / Codeium will now:
- β
Automatically create issues for work descriptions
- β
Route tasks to specialized agents
- β
Enforce Ingka best practices
- β
Update project board status
- β
Generate spec-compliant commit messages
Example:
`
You: "Add dark mode toggle to settings page"
Copilot (via Ingvar):
β Issue created: #42 - "Add dark mode toggle"
β Routing to Frontend Agent...
β Creating component with accessibility support
β Status updated: Todo β In Progress
`
---
π― Command Reference
$3
#### ingvar init
Initialize Ingvar workflow in current project.
`bash
ingvar init [options]
Options:
-o, --org GitHub organization name
-p, --project GitHub project number
--skip-project Skip GitHub Project setup
--skip-labels Skip label setup
--skip-vscode Skip VS Code configuration
--non-interactive Run with defaults (CI/CD mode)
`
Example:
`bash
Interactive setup (recommended)
ingvar init
Non-interactive with org
ingvar init --org ingka-group --project 4
Skip GitHub Project integration
ingvar init --skip-project
`
---
#### ingvar issue
Create spec-driven issue from templates.
`bash
ingvar issue [options]
Alias: ingvar i
Options:
-t, --template Template type (bug, feature, docs, etc.)
-T, --title Issue title
-p, --priority Priority (P0, P1, P2, P3)
-a, --assignee Assign to user
--no-interactive Skip prompts
`
Example:
`bash
Interactive (choose from templates)
ingvar issue
Quick bug report
ingvar i -t bug -T "Login button not working" -p P1
Feature with assignment
ingvar i -t feature -T "Add OAuth2 support" -a yourusername
`
---
#### ingvar labels
Set up GitHub labels for workflow.
`bash
ingvar labels [options]
Alias: ingvar l
Options:
--clean Remove default GitHub labels first
`
Example:
`bash
Add Ingvar labels
ingvar labels
Clean slate (remove GitHub defaults, add Ingvar labels)
ingvar labels --clean
`
---
#### ingvar vscode
Install VS Code Copilot instructions.
`bash
ingvar vscode [options]
Alias: ingvar vs
Options:
--global Install to user settings
--project Install to project only
`
Example:
`bash
Project-level (recommended)
ingvar vscode
Global (all projects)
ingvar vscode --global
`
---
#### ingvar config
Manage workflow configuration.
`bash
ingvar config [value]
Alias: ingvar cfg
Examples:
ingvar config github.owner ingka-group
ingvar config github.repo ingvar-kit
ingvar config auto-resolve true
ingvar config list
`
Configuration Options:
| Key | Description | Default |
| --------------------- | ------------------------------ | --------- |
| github.owner | GitHub owner/org | null |
| github.repo | Repository name | null |
| github.project.url | GitHub Project URL | null |
| github.project.id | GitHub Project ID | null |
| auto-resolve | Auto-start work after issue | true |
| project-type | Project type (fullstack, etc.) | general |
| enabled-agents | Active agents | [] |
| ai-assistants | Active AI tools | [] |
---
#### ingvar agent
Manage specialized agents.
`bash
ingvar agent [agent]
Subcommands:
list List all available agents
enable Enable an agent
disable Disable an agent
info Show agent details
sync Sync AI instruction files
Options:
--no-sync Skip AI file sync when enabling/disabling
`
Example:
`bash
List available agents
ingvar agent list
Enable Frontend agent
ingvar agent enable frontend
Disable Testing agent
ingvar agent disable testing
View Frontend agent details
ingvar agent info frontend
Manually sync AI instructions
ingvar agent sync
`
Available Agents:
- orchestrator (always enabled)
- frontend
- backend
- devops
- testing
- documentation
---
#### ingvar ai
Manage AI assistant configurations.
`bash
ingvar ai [args...]
Subcommands:
list List supported AI assistants
add Add AI assistant
remove Remove AI assistant
sync Sync instruction files
`
Example:
`bash
List supported AI assistants
ingvar ai list
Add Copilot support
ingvar ai add copilot
Remove Cursor support
ingvar ai remove cursor
Sync all AI instruction files
ingvar ai sync
`
Supported AI Assistants:
- copilot (GitHub Copilot)
- cursor (Cursor AI)
- cline (Cline AI)
- codeium (Codeium AI)
---
#### ingvar github
Configure GitHub repository settings.
`bash
ingvar github
Subcommands:
setup Interactive GitHub setup
status Show GitHub configuration
Options:
-y, --yes Skip confirmation prompts
`
Example:
`bash
Interactive GitHub setup
ingvar github setup
Check GitHub configuration
ingvar github status
`
---
#### ingvar status
Quick workflow setup status check.
`bash
ingvar status
Alias: ingvar s
`
Checks:
- β
GitHub CLI installed
- β
Git repository initialized
- β
Issue templates configured
- β
Labels set up
- β
VS Code configured
---
#### ingvar health
Comprehensive workflow health check with scoring.
`bash
ingvar health
Alias: ingvar h
`
Health Score Categories:
- GitHub CLI setup
- Repository configuration
- Issue templates
- Label system
- VS Code integration
- Agent configuration
- AI assistant setup
Scoring:
- π’ 90-100: Excellent
- π‘ 70-89: Good
- π 50-69: Needs improvement
- π΄ < 50: Critical issues
---
#### ingvar docs
Open documentation in browser.
`bash
ingvar docs
`
---
#### ingvar welcome
Show welcome message and quick start guide.
`bash
ingvar welcome
Alias: ingvar w
`
---
π οΈ Configuration
$3
Created by ingvar init, this file stores your project configuration:
`json
{
"version": "1.0.0",
"github": {
"owner": "ingka-group",
"repo": "your-repo",
"project": {
"url": "https://github.com/orgs/ingka-group/projects/1",
"id": "PVT_kwDOABCDEF",
"number": 1
}
},
"auto-resolve": true,
"project-type": "fullstack",
"enabled-agents": ["orchestrator", "frontend", "backend"],
"ai-assistants": ["copilot", "cursor"]
}
`
Note: .ingvarrc.json is git-ignored (contains sensitive project data).
---
π€ Working with AI Assistants
$3
When you have Copilot installed, Ingvar automatically enhances it with:
1. Automatic Issue Creation: Copilot detects work descriptions and creates issues
2. Task Routing: Routes to specialized agents based on keywords
3. Workflow Enforcement: Ensures spec-first methodology
4. Status Updates: Auto-comments on issues as work progresses
Example Conversation:
`
You: "I need to add a search bar to the header"
Copilot (powered by Ingvar):
β Task classified: Frontend (UI component)
β Issue created: #55 - "Add search bar to header"
β Routing to Frontend Agent...
[Frontend Agent implements search bar with:
- Accessible ARIA labels
- Mobile-responsive design
- Debounced input
- Keyboard navigation]
β Status updated: Todo β In Progress β Done
`
$3
For complex tasks requiring multiple agents:
`
You: "Add OAuth2 authentication with Google and GitHub"
Orchestrator:
β Task classified: Multi-agent (Backend + Frontend)
β Issue created: #60 - "Add OAuth2 authentication"
Step 1: Backend Agent
β Created /api/auth/google endpoint
β Created /api/auth/github endpoint
β Configured OAuth2 providers
Step 2: Frontend Agent
β Created LoginButton component
β Added OAuth2 redirect flow
β Managed auth state
β Integration complete
β Issue #60 β Done
`
---
π Best Practices
$3
Rule: If effort > 1 week, create a spec first.
`bash
Create spec in docs/specs/
ingvar init # Creates docs/specs/ directory
Write spec: docs/specs/oauth2-implementation.md
Get team review
Then break into issues
`
$3
β
Good:
- "Add OAuth2 authentication with Google and GitHub"
- "Fix button alignment on mobile devices"
- "Optimize database query for user search"
β Bad:
- "Fix bug"
- "Update code"
- "Changes"
$3
- P0 π΄: Production down, data loss, security breach
- P1 π : Major feature broken, blocking work
- P2 π‘: Minor bug, enhancement, tech debt
- P3 π’: Nice-to-have, polish, future improvement
$3
Don't enable all agents if you don't need them:
`bash
Frontend-only project
ingvar agent enable frontend
Fullstack project
ingvar agent enable frontend
ingvar agent enable backend
ingvar agent enable testing
`
$3
Rule: Subject line < 72 characters, reference issue number.
`bash
β
Good
git commit -m "feat(auth): add OAuth2 support (#60)"
β Bad (too long, breaks pipelines)
git commit -m "This commit adds OAuth2 authentication with Google and GitHub providers including session management and redirect flow handling"
`
$3
Don't manually create issuesβlet Copilot/Cursor do it:
`
Instead of:
1. Go to GitHub
2. Click "New Issue"
3. Fill out form
Just tell your AI assistant:
"Add dark mode toggle to settings"
Ingvar will:
β Create issue automatically
β Add proper labels
β Link to project board
β Start tracking status
`
---
π§© Examples
$3
`
You: "Add a responsive navigation bar with mobile menu"
Ingvar Orchestrator:
β Task classified: Frontend (UI component)
β Issue created: #42 - "Add responsive navigation bar"
β Routing to Frontend Agent...
Frontend Agent:
β Creating Navbar component (organism level)
β Implementing mobile-first design
β Adding accessibility (ARIA labels, keyboard nav)
β Optimizing performance (lazy loading, code splitting)
β Issue #42 β In Progress β Done
β PR created with "Closes #42"
`
---
$3
`
You: "Create a REST API for user management with CRUD operations"
Ingvar Orchestrator:
β Task classified: Backend (API development)
β Issue created: #50 - "Create user management API"
β Routing to Backend Agent...
Backend Agent:
β Created /api/users endpoints (GET, POST, PUT, DELETE)
β Added input validation with Joi
β Implemented authentication middleware
β Added rate limiting
β Created unit tests
β Issue #50 β In Progress β Done
`
---
$3
`
You: "Build an admin dashboard with user analytics"
Ingvar Orchestrator:
β Task classified: Multi-agent (Frontend + Backend + Testing)
β Issue created: #75 - "Build admin dashboard"
Step 1: Backend Agent
β Created /api/analytics endpoints
β Aggregated user metrics
β Added caching layer
Step 2: Frontend Agent
β Created Dashboard component
β Integrated Chart.js for visualizations
β Responsive grid layout
Step 3: Testing Agent
β Added E2E tests for dashboard
β Unit tests for analytics API
β 85% code coverage
β Issue #75 β Done
`
---
π Advanced Usage
$3
Edit .ingvarrc.json to customize agent behavior:
`json
{
"agents": {
"frontend": {
"enabled": true,
"frameworks": ["react", "next.js"],
"ui-library": "tailwind",
"project-type": "web-app"
},
"backend": {
"enabled": true,
"language": "typescript",
"database": "postgresql",
"orm": "prisma"
}
}
}
`
$3
Add custom templates to .github/ISSUE_TEMPLATE/:
`bash
Use existing templates as reference
ls .github/ISSUE_TEMPLATE/
Create custom template
cp .github/ISSUE_TEMPLATE/feature_request.md .github/ISSUE_TEMPLATE/custom_template.md
Edit to fit your needs
`
$3
Use ingvar init --non-interactive in CI/CD pipelines:
`yaml
.github/workflows/setup.yml
name: Setup Ingvar Workflow
on:
repository_dispatch:
types: [setup-workflow]
jobs:
setup:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: "18"
- run: npm install -g ingvar-workflow-kit
- run: ingvar init --non-interactive --skip-project
- run: ingvar labels
`
---
π§ Troubleshooting
$3
Solution:
`bash
Check npm global bin path
npm config get prefix
Add to PATH (macOS/Linux)
echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc
Windows
Add npm global bin to System PATH environment variable
`
---
$3
Solution:
`bash
Authenticate with GitHub
gh auth login
Verify
gh auth status
`
---
$3
Solution:
`bash
Reinstall AI instructions
ingvar vscode
Verify files exist
ls .github/copilot-instructions.md
ls .cursorrules
ls .clinerules
ls .codeium/instructions.md
Restart VS Code / Cursor
`
---
$3
Solution:
`bash
Check GitHub configuration
ingvar config list
Reconfigure GitHub
ingvar config github.owner your-org
ingvar config github.repo your-repo
ingvar github setup
Test issue creation
ingvar issue -t bug -T "Test issue" -p P3
`
---
π€ Contributing
We welcome contributions from the Ingka community and beyond!
$3
1. Fork the repository
2. Create a feature branch: git checkout -b feature/amazing-feature
3. Make your changes
4. Run tests: npm test (when available)
5. Commit: git commit -m "feat: add amazing feature"
6. Push: git push origin feature/amazing-feature`