fraim-framework 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/DISTRIBUTION.md +187 -0
  2. package/README.md +159 -0
  3. package/agents/claude/CLAUDE.md +42 -0
  4. package/agents/cursor/rules/architecture.mdc +49 -0
  5. package/agents/cursor/rules/continuous-learning.mdc +48 -0
  6. package/agents/cursor/rules/cursor-workflow.mdc +29 -0
  7. package/agents/cursor/rules/design.mdc +25 -0
  8. package/agents/cursor/rules/implement.mdc +26 -0
  9. package/agents/cursor/rules/local-development.mdc +104 -0
  10. package/agents/cursor/rules/prep.mdc +15 -0
  11. package/agents/cursor/rules/resolve.mdc +46 -0
  12. package/agents/cursor/rules/simplicity.mdc +18 -0
  13. package/agents/cursor/rules/software-development-lifecycle.mdc +41 -0
  14. package/agents/cursor/rules/test.mdc +25 -0
  15. package/agents/windsurf/rules/architecture.md +49 -0
  16. package/agents/windsurf/rules/continuous-learning.md +47 -0
  17. package/agents/windsurf/rules/local-development.md +103 -0
  18. package/agents/windsurf/rules/remote-development.md +22 -0
  19. package/agents/windsurf/rules/simplicity.md +17 -0
  20. package/agents/windsurf/rules/windsurf-workflow.md +28 -0
  21. package/agents/windsurf/workflows/prep.md +20 -0
  22. package/agents/windsurf/workflows/resolve-issue.md +47 -0
  23. package/agents/windsurf/workflows/start-design.md +26 -0
  24. package/agents/windsurf/workflows/start-impl.md +27 -0
  25. package/agents/windsurf/workflows/start-tests.md +26 -0
  26. package/bin/fraim.js +117 -0
  27. package/docs/guides/getting-started.md +175 -0
  28. package/getting-started.md +143 -0
  29. package/index.js +40 -0
  30. package/install.sh +58 -0
  31. package/package.json +50 -0
  32. package/scripts/__init__.py +10 -0
  33. package/scripts/cli.py +141 -0
  34. package/setup.js +86 -0
  35. package/setup.py +0 -0
  36. package/test-config.json +32 -0
  37. package/workflows/setup-fraim.yml +147 -0
@@ -0,0 +1,175 @@
1
+ # 🚀 Getting Started with FRAIM
2
+
3
+ **Framework for Rigor-based AI Management**
4
+
5
+ Welcome to FRAIM! This guide will transform you from a developer into an AI manager in under 30 seconds.
6
+
7
+ ## 🚀 Quick Start (30 seconds)
8
+
9
+ ### 1. Navigate to Your Repository
10
+ ```bash
11
+ cd your-project
12
+ ```
13
+
14
+ ### 2. Setup FRAIM
15
+ ```bash
16
+ npx @fraim/framework init
17
+ ```
18
+
19
+ ### 3. Create Your First AI-Managed Issue
20
+ ```bash
21
+ gh issue create --title "Add user authentication" --label "phase:design,ai-agent:claude"
22
+ ```
23
+
24
+ ### 4. Watch the Magic Happen! 🎉
25
+
26
+ GitHub automatically:
27
+ - 🔄 Creates branch: `feature/1-add-user-authentication`
28
+ - 🔄 Creates draft PR
29
+ - 🔄 Sets status: `status:wip`
30
+ - 🤖 Claude starts working on RFC
31
+
32
+ ## 🤖 AI Agent Coordination
33
+
34
+ FRAIM coordinates three types of AI agents, each with specific roles:
35
+
36
+ ### Cursor (IDE Development)
37
+ - **Role**: Implementation and testing
38
+ - **Strengths**: Code generation, testing, IDE integration
39
+ - **Best For**: `phase:impl` tasks
40
+
41
+ ### Claude (Conversational AI)
42
+ - **Role**: Design and RFC creation
43
+ - **Strengths**: Natural language, documentation, architecture
44
+ - **Best For**: `phase:design` tasks
45
+
46
+ ### Windsurf (Code Understanding)
47
+ - **Role**: Performance and integration
48
+ - **Strengths**: Code analysis, optimization, system integration
49
+ - **Best For**: `phase:tests` and optimization tasks
50
+
51
+ ## 📋 Workflow Phases
52
+
53
+ ### Phase 1: Design (`phase:design`)
54
+ 1. **Create Issue**: Describe the feature or bug
55
+ 2. **Add Labels**: `phase:design` + `ai-agent:claude`
56
+ 3. **AI Action**: Claude creates RFC and architecture docs
57
+ 4. **Review**: Stakeholders review and approve design
58
+ 5. **Transition**: Change to `phase:impl` + `ai-agent:cursor`
59
+
60
+ ### Phase 2: Implementation (`phase:impl`)
61
+ 1. **AI Action**: Cursor implements the feature
62
+ 2. **Testing**: Comprehensive test coverage
63
+ 3. **Documentation**: Code comments and updates
64
+ 4. **Review**: Code review and validation
65
+ 5. **Transition**: Change to `phase:tests` + `ai-agent:windsurf`
66
+
67
+ ### Phase 3: Testing (`phase:tests`)
68
+ 1. **AI Action**: Windsurf validates implementation
69
+ 2. **Performance**: Performance testing and optimization
70
+ 3. **Integration**: System integration testing
71
+ 4. **Validation**: Final validation against requirements
72
+ 5. **Completion**: Mark as `status:complete`
73
+
74
+ ## 🏷️ Label System
75
+
76
+ ### Phase Labels
77
+ - `phase:design` - Design and RFC creation
78
+ - `phase:impl` - Implementation and development
79
+ - `phase:tests` - Testing and validation
80
+
81
+ ### Status Labels
82
+ - `status:wip` - Work in progress
83
+ - `status:needs-review` - Ready for review
84
+ - `status:complete` - Work completed
85
+
86
+ ### Agent Labels
87
+ - `ai-agent:cursor` - Assigned to Cursor
88
+ - `ai-agent:claude` - Assigned to Claude
89
+ - `ai-agent:windsurf` - Assigned to Windsurf
90
+
91
+ ### Priority Labels (Optional)
92
+ - `priority:critical` - Critical priority
93
+ - `priority:high` - High priority
94
+ - `priority:medium` - Medium priority
95
+ - `priority:low` - Low priority
96
+
97
+ ## 🔧 Advanced Setup
98
+
99
+ ### Interactive Wizard
100
+ ```bash
101
+ npx @fraim/framework wizard
102
+ ```
103
+
104
+ The wizard will ask you:
105
+ - Which AI agents to enable
106
+ - Whether to enable deployment workflows
107
+ - Whether to run in dry-run mode first
108
+
109
+ ### Custom Configuration
110
+ ```bash
111
+ npx @fraim/framework setup owner/repository --config custom-config.json
112
+ ```
113
+
114
+ ### Partial Setup
115
+ ```bash
116
+ # Only create labels
117
+ npx @fraim/framework setup owner/repository --labels-only
118
+
119
+ # Only setup workflows
120
+ npx @fraim/framework setup owner/repository --workflows-only
121
+ ```
122
+
123
+ ## 📚 Next Steps
124
+
125
+ ### 1. Explore Documentation
126
+ - [🧠 RIGOR Methodology](../../README.md#-the-rigor-methodology)
127
+ - [🤖 AI Agent Rules](../../agents/)
128
+ - [🏗️ Framework Overview](../../README.md#-framework-structure)
129
+
130
+ ### 2. Try Different Workflows
131
+ - Create issues with different phase/agent combinations
132
+ - Experiment with the label system
133
+ - Practice phase transitions
134
+
135
+ ### 3. Customize for Your Team
136
+ - Adjust agent assignments based on team strengths
137
+ - Customize workflows for your development process
138
+ - Add team-specific labels and processes
139
+
140
+ ### 4. Scale Up
141
+ - Apply FRAIM to multiple repositories
142
+ - Train your team on the methodology
143
+ - Integrate with existing CI/CD pipelines
144
+
145
+ ## 🎯 Success Metrics
146
+
147
+ ### Individual Level
148
+ - **Setup Time**: < 30 seconds to get started
149
+ - **Issue Resolution**: Faster development cycles
150
+ - **Code Quality**: Higher quality through AI coordination
151
+ - **Learning**: Better understanding of AI capabilities
152
+
153
+ ### Team Level
154
+ - **Coordination**: Seamless AI agent collaboration
155
+ - **Consistency**: Standardized development processes
156
+ - **Visibility**: Clear progress tracking and status
157
+ - **Efficiency**: Reduced manual coordination overhead
158
+
159
+ ### Organization Level
160
+ - **Scalability**: Framework grows with your organization
161
+ - **Compliance**: Audit trails and process documentation
162
+ - **Innovation**: Faster adoption of new AI capabilities
163
+ - **Competitive Advantage**: Professional AI management capabilities
164
+
165
+ ## 🚀 Ready to Become an AI Manager?
166
+
167
+ ```bash
168
+ npx @fraim/framework init
169
+ ```
170
+
171
+ **FRAIM: Where humans become AI managers through rigorous methodology**
172
+
173
+ ---
174
+
175
+ *Need help? Check the [main README](../../README.md) or [contact the team](https://github.com/mathursrus/Ashley-Calendar-AI/issues).*
@@ -0,0 +1,143 @@
1
+ # 🚀 Getting Started with FRAIM
2
+
3
+ **Framework for Rigor-based AI Management**
4
+
5
+ Welcome to FRAIM! This guide will transform you from a developer into an AI manager in under 30 seconds.
6
+
7
+ ## 🎯 What is FRAIM?
8
+
9
+ FRAIM is a framework that empowers human developers to coordinate AI agents using the **RIGOR methodology**: Reviews • Isolation • GitOps • Observability • Retrospectives.
10
+
11
+ Instead of manually managing AI tools, FRAIM gives you the structure and automation to orchestrate AI agents like a professional team manager.
12
+
13
+ ## 🚀 Quick Start (30 seconds)
14
+
15
+ ### 1. Navigate to Your Repository
16
+ ```bash
17
+ cd your-project
18
+ ```
19
+
20
+ ### 2. Setup FRAIM
21
+ ```bash
22
+ npx @fraim/setup init
23
+ ```
24
+
25
+ ### 3. Create Your Issue List in your Git Repo
26
+ ```bash
27
+ gh issue create --title "Add user authentication"
28
+ ```
29
+
30
+ ### 4. Let your AI Agents do the Magic! 🎉
31
+ Cursor: @design 1
32
+ Windsurf: /start-design 1
33
+ Claude: @design 1
34
+
35
+ AI Agent automatically:
36
+ - 🔄 Labels the Git issue with phase:design
37
+
38
+ GitHub automatically:
39
+ - 🔄 Creates branch: `feature/1-add-user-authentication`
40
+ - 🔄 Creates draft PR
41
+ - 🔄 Sets status: `status:wip`
42
+
43
+ AI Agent automatically:
44
+ - 🔄 Checks out the new branch
45
+ - 🔄 Researches codebase, architecture, issue and writes a PRD/RFC
46
+ - 🔄 Commits, Syncs the branch and Labels the Git issue with status:needs-review for you to PR
47
+
48
+ You:
49
+ - Watch the magic happen
50
+ - Review the PR like you normally would, and add comments
51
+ - Let the AI Agent know if you want it to iterate, or proceed to @implement (Claude, Cursor), or /start-impl (Windsurf)
52
+
53
+
54
+ ## 🧠 Understanding the RIGOR Methodology
55
+
56
+ FRAIM is built on five core principles that ensure reliable, scalable, continuously improving AI coordination:
57
+
58
+ - **R**eviews: Structured feedback and approval processes
59
+ - **I**solation: Agents don't interfere with each others' work *unless* you explicitly ask them to
60
+ - **G**itOps: Git as the single source of truth and the glue between you and your agents
61
+ - **O**bservability: Complete visibility into AI activities
62
+ - **R**etrospectives: Continuous learning from mistakes and positive experiences
63
+
64
+
65
+ ## 📋 Workflow Phases
66
+
67
+ ### Phase 1: Design (`phase:design`)
68
+ 1. **You**: Tell the agent to move into this phase and give it the issue number
69
+ 2. **AI Action**: Labels issue `phase:design`, moves to branch, creates RFC/UX/test-plan, commits and sends out PR, labels issue `status:needs-review`
70
+ 3. **Review**: Stakeholders review and approve design
71
+ 4. **Issue, PR State**: Git automatically changes status between wip, complete
72
+
73
+ ### Phase 2: Implementation (`phase:impl`)
74
+ 1. **You**: Tell the agent to move into this phase
75
+ 2. **AI Action**: Labels issue `phase:impl`, moves to branch, consults issue/code/rfcs, implements code and tests, runs tests, commits and sends out PR
76
+ 3. **Review**: Stakeholders review and approve implementation
77
+ 4. **Issue, PR State**: Git automatically changes status between wip, complete
78
+
79
+ ### Phase 3: Resolve
80
+ 1. **You**: Tell the agent to move into this phase once totally satisfied with the implementation and tests
81
+ 2. **AI Action**: Pulls from master, deals with merge issues (with your help if needed), confirms everything still works, pushes to master, deletes remote and local branches, cleans up local copy of the branch
82
+ 3. **Git**: Runs CI and prevents merging if failed
83
+
84
+ ## 🏷️ Label System
85
+
86
+ ### Phase Labels
87
+ - `phase:design` - Design and RFC creation
88
+ - `phase:impl` - Implementation and development
89
+ - `phase:tests` - Testing and validation (if needed, I ask AI Agents to write tests as part of implementation)
90
+
91
+ ### Status Labels
92
+ - `status:wip` - Work in progress
93
+ - `status:needs-review` - Ready for review
94
+ - `status:complete` - Work completed
95
+
96
+ ### Agent Labels (for future, I don't use these yet)
97
+ - `ai-agent:cursor` - Assigned to Cursor
98
+ - `ai-agent:claude` - Assigned to Claude
99
+ - `ai-agent:windsurf` - Assigned to Windsurf
100
+
101
+ ## 🔧 Advanced Setup
102
+
103
+ ### Interactive Wizard
104
+ ```bash
105
+ npx @fraim/setup wizard
106
+ ```
107
+
108
+ The wizard will ask you:
109
+ - Which AI agents to enable
110
+ - Whether to enable deployment workflows
111
+ - Whether to run in dry-run mode first
112
+
113
+ ### Custom Configuration
114
+ ```bash
115
+ npx @fraim/setup setup owner/repository --config custom-config.json
116
+ ```
117
+
118
+ ### Partial Setup
119
+ ```bash
120
+ # Only create labels
121
+ npx @fraim/setup setup owner/repository --labels-only
122
+
123
+ # Only setup workflows
124
+ npx @fraim/setup setup owner/repository --workflows-only
125
+ ```
126
+
127
+ ## 🎯 Success Metrics - I hope these happen for you
128
+
129
+ - **Setup Time**: < 30 seconds to get started
130
+ - **Issue Resolution**: Faster development cycles
131
+ - **Code Quality**: Higher quality through AI coordination
132
+ - **Learning**: Better understanding of AI capabilities
133
+
134
+ ## 🚀 Ready to Become an AI Manager?
135
+
136
+ ```bash
137
+ npx @fraim/setup init
138
+ ```
139
+
140
+ **FRAIM: Where humans become AI managers through rigorous methodology**
141
+
142
+ ---
143
+
package/index.js ADDED
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * FRAIM Framework - Main Entry Point
5
+ * Framework for Rigor-based AI Management
6
+ * Where humans become AI managers through rigorous methodology
7
+ */
8
+
9
+ const path = require('path');
10
+ const fs = require('fs');
11
+
12
+ // Import the CLI
13
+ const { main } = require('./bin/fraim.js');
14
+
15
+ // Export the main function for programmatic use
16
+ module.exports = { main };
17
+
18
+ // If this file is run directly, execute the CLI
19
+ if (require.main === module) {
20
+ main();
21
+ }
22
+
23
+ // Framework information
24
+ module.exports.FRAIM_INFO = {
25
+ name: 'FRAIM',
26
+ fullName: 'Framework for Rigor-based AI Management',
27
+ version: '1.0.0',
28
+ description: 'Where humans become AI managers through rigorous methodology',
29
+ methodology: 'RIGOR',
30
+ principles: [
31
+ 'Reviews: Structured feedback and approval processes',
32
+ 'Isolation: Agents don\'t interfere with each others\' work *unless* you explicitly ask them to',
33
+ 'GitOps: Git as the single source of truth and the glue between you and your agents',
34
+ 'Observability: Complete visibility into AI activities',
35
+ 'Retrospectives: Continuous learning from mistakes and positive experiences'
36
+ ],
37
+ supportedAgents: ['cursor', 'claude', 'windsurf'],
38
+ repository: 'https://github.com/mathursrus/Ashley-Calendar-AI/tree/master/FRAIM',
39
+ note: 'All rules and workflows have been tested and proven in real project environments'
40
+ };
package/install.sh ADDED
@@ -0,0 +1,58 @@
1
+ #!/bin/bash
2
+
3
+ # FRAIM One-Line Installer
4
+ # Framework for Rigor-based AI Management
5
+ # Where humans become AI managers through rigorous methodology
6
+
7
+ set -e
8
+
9
+ # Colors for output
10
+ RED='\033[0;31m'
11
+ GREEN='\033[0;32m'
12
+ YELLOW='\033[1;33m'
13
+ BLUE='\033[0;34m'
14
+ NC='\033[0m' # No Color
15
+
16
+ # Banner
17
+ echo -e "${BLUE}"
18
+ cat << 'EOF'
19
+ ╔══════════════════════════════════════════════════════════════╗
20
+ ║ 🚀 FRAIM ║
21
+ ║ Framework for Rigor-based AI Management ║
22
+ ║ Where humans become AI managers ║
23
+ ╚══════════════════════════════════════════════════════════════╝
24
+ EOF
25
+ echo -e "${NC}"
26
+
27
+ echo -e "${GREEN}🤖 Welcome to FRAIM!${NC}"
28
+ echo -e "${GREEN}Where humans become AI managers through rigorous methodology${NC}\n"
29
+
30
+ # Check if we're in a git repository
31
+ if [ ! -d ".git" ]; then
32
+ echo -e "${RED}❌ Error: Not in a git repository${NC}"
33
+ echo "Please run this script from within a git repository."
34
+ exit 1
35
+ fi
36
+
37
+ # Check if FRAIM is already installed
38
+ if [ -d "FRAIM" ]; then
39
+ echo -e "${YELLOW}⚠️ FRAIM appears to already be installed in this repository${NC}"
40
+ echo "If you want to reinstall, please remove the existing FRAIM folder first."
41
+ exit 1
42
+ fi
43
+
44
+ echo -e "${BLUE}📥 Installing FRAIM framework...${NC}"
45
+
46
+ # Download FRAIM from GitHub
47
+ echo "Downloading FRAIM framework..."
48
+ curl -sSL https://raw.githubusercontent.com/mathursrus/Ashley-Calendar-AI/master/FRAIM/install.sh | bash -s -- --repo $(git remote get-url origin | sed 's/.*github.com[:/]\([^/]*\/[^/]*\).*/\1/' | sed 's/\.git$//')
49
+
50
+ echo -e "\n${GREEN}✅ FRAIM installation complete!${NC}"
51
+ echo -e "\n${BLUE}🚀 Next steps:${NC}"
52
+ echo "1. Review the FRAIM folder that was created"
53
+ echo "2. Run: npx @fraim/framework init"
54
+ echo "3. Start managing your AI agents with RIGOR methodology!"
55
+ echo -e "\n${BLUE}📚 Learn more:${NC}"
56
+ echo "Documentation: https://github.com/mathursrus/Ashley-Calendar-AI/tree/master/FRAIM"
57
+ echo -e "\n${GREEN}🎯 Ready to become an AI manager?${NC}"
58
+ echo "The FRAIM framework is now installed and ready to use!"
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "fraim-framework",
3
+ "version": "1.0.0",
4
+ "description": "FRAIM: Framework for Rigor-based AI Management - Where humans become AI managers through rigorous methodology",
5
+ "main": "index.js",
6
+ "bin": {
7
+ "fraim": "./bin/fraim.js",
8
+ "fraim-setup": "./bin/fraim.js"
9
+ },
10
+ "scripts": {
11
+ "setup": "node setup.js",
12
+ "test": "echo \"Error: no test specified\" && exit 1",
13
+ "postinstall": "echo '🚀 FRAIM installed! Run: npx fraim-framework --help'"
14
+ },
15
+ "repository": {
16
+ "type": "git",
17
+ "url": "git+https://github.com/mathursrus/Ashley-Calendar-AI.git",
18
+ "directory": "FRAIM"
19
+ },
20
+ "keywords": [
21
+ "fraim",
22
+ "ai-management",
23
+ "ai-coordination",
24
+ "ai-agents",
25
+ "multi-agent",
26
+ "github",
27
+ "workflow",
28
+ "automation",
29
+ "gitops",
30
+ "cursor",
31
+ "claude",
32
+ "windsurf",
33
+ "rigor",
34
+ "enterprise",
35
+ "framework",
36
+ "ai-managers"
37
+ ],
38
+ "author": "Sid Mathur <sid.mathur@gmail.com>",
39
+ "license": "MIT",
40
+ "bugs": {
41
+ "url": "https://github.com/mathursrus/Ashley-Calendar-AI/issues"
42
+ },
43
+ "homepage": "https://github.com/mathursrus/Ashley-Calendar-AI/tree/master/FRAIM#readme",
44
+ "engines": {
45
+ "node": ">=16.0.0"
46
+ },
47
+ "publishConfig": {
48
+ "access": "public"
49
+ }
50
+ }
@@ -0,0 +1,10 @@
1
+ """
2
+ FRAIM Python Package
3
+ Framework for Rigor-based AI Management
4
+ Where humans become AI managers through rigorous methodology
5
+ """
6
+
7
+ from .cli import main
8
+
9
+ __version__ = "1.0.0"
10
+ __all__ = ["main"]
package/scripts/cli.py ADDED
@@ -0,0 +1,141 @@
1
+ #!/usr/bin/env python3
2
+ """
3
+ FRAIM Python CLI
4
+ Framework for Rigor-based AI Management
5
+ Where humans become AI managers through rigorous methodology
6
+ """
7
+
8
+ import sys
9
+ import argparse
10
+
11
+ def show_banner():
12
+ """Display FRAIM banner"""
13
+ banner = """
14
+ ╔══════════════════════════════════════════════════════════════╗
15
+ ║ 🚀 FRAIM ║
16
+ ║ Framework for Rigor-based AI Management ║
17
+ ║ Where humans become AI managers ║
18
+ ╚══════════════════════════════════════════════════════════════╝
19
+ """
20
+ print(banner)
21
+
22
+ def show_help():
23
+ """Display help information"""
24
+ show_banner()
25
+ print("🤖 Welcome to FRAIM!")
26
+ print("Where humans become AI managers through rigorous methodology\n")
27
+
28
+ print("🚀 Quick commands:")
29
+ print(" pip install fraim-framework")
30
+ print(" fraim init # Setup current repository")
31
+ print(" fraim rigor # Learn RIGOR methodology")
32
+ print(" fraim --help # Full documentation\n")
33
+
34
+ print("🧠 The RIGOR Methodology:")
35
+ print(" R - Reviews: Structured feedback and approval processes")
36
+ print(" I - Idempotency: Safe, repeatable operations")
37
+ print(" G - GitOps: Git as the single source of truth")
38
+ print(" O - Observability: Complete visibility into AI activities")
39
+ print(" R - Rollback: Safe recovery from any state\n")
40
+
41
+ print("📚 Documentation: https://github.com/mathursrus/Ashley-Calendar-AI/tree/master/FRAIM")
42
+ print("🎯 Ready to become an AI manager? Run: fraim init")
43
+
44
+ def show_rigor():
45
+ """Display RIGOR methodology information"""
46
+ show_banner()
47
+ print("🧠 The RIGOR Methodology for AI Management\n")
48
+
49
+ print("R - Reviews:")
50
+ print(" • Structured feedback and approval processes")
51
+ print(" • Code review workflows with AI agents")
52
+ print(" • Automated quality gates and checks")
53
+ print(" • Human oversight of AI decisions\n")
54
+
55
+ print("I - Idempotency:")
56
+ print(" • Safe, repeatable operations")
57
+ print(" • No side effects from multiple runs")
58
+ print(" • Consistent results every time")
59
+ print(" • Rollback-friendly changes\n")
60
+
61
+ print("G - GitOps:")
62
+ print(" • Git as the single source of truth")
63
+ print(" • Declarative infrastructure and workflows")
64
+ print(" • Automated deployments from Git changes")
65
+ print(" • Version-controlled AI agent configurations\n")
66
+
67
+ print("O - Observability:")
68
+ print(" • Complete visibility into AI activities")
69
+ print(" • Metrics, logs, and tracing")
70
+ print(" • Performance monitoring and alerting")
71
+ print(" • Audit trails for compliance\n")
72
+
73
+ print("R - Rollback:")
74
+ print(" • Safe recovery from any state")
75
+ print(" • Automated rollback mechanisms")
76
+ print(" • Point-in-time recovery")
77
+ print(" • Zero-downtime deployments\n")
78
+
79
+ print("🎯 This methodology transforms you from a developer into an AI manager!")
80
+
81
+ def main():
82
+ """Main CLI entry point"""
83
+ parser = argparse.ArgumentParser(
84
+ description="FRAIM: Framework for Rigor-based AI Management",
85
+ formatter_class=argparse.RawDescriptionHelpFormatter,
86
+ epilog="""
87
+ Examples:
88
+ fraim init # Setup FRAIM in current repository
89
+ fraim rigor # Learn about RIGOR methodology
90
+ fraim --help # Show this help message
91
+ """
92
+ )
93
+
94
+ parser.add_argument(
95
+ "command",
96
+ nargs="?",
97
+ choices=["init", "rigor", "setup", "wizard"],
98
+ help="Command to execute"
99
+ )
100
+
101
+ parser.add_argument(
102
+ "--version",
103
+ action="version",
104
+ version="FRAIM 1.0.0"
105
+ )
106
+
107
+ args = parser.parse_args()
108
+
109
+ if not args.command or args.command == "help":
110
+ show_help()
111
+ return
112
+
113
+ if args.command == "rigor":
114
+ show_rigor()
115
+ return
116
+
117
+ if args.command in ["init", "setup"]:
118
+ show_banner()
119
+ print("🚀 Setting up FRAIM in current repository...\n")
120
+ print("📋 This will:")
121
+ print(" • Create GitHub labels for AI management")
122
+ print(" • Set up automated workflows")
123
+ print(" • Configure AI agent rules")
124
+ print(" • Initialize documentation\n")
125
+ print("💡 Run: fraim init # For full setup")
126
+ print("🔧 Or run: fraim wizard # For interactive setup")
127
+ return
128
+
129
+ if args.command == "wizard":
130
+ show_banner()
131
+ print("🔮 FRAIM Interactive Setup Wizard\n")
132
+ print("This wizard will guide you through:")
133
+ print(" 1. Repository configuration")
134
+ print(" 2. AI agent setup")
135
+ print(" 3. Workflow customization")
136
+ print(" 4. Team member onboarding\n")
137
+ print("💡 Run: fraim wizard # To start the wizard")
138
+ return
139
+
140
+ if __name__ == "__main__":
141
+ main()