fraim-framework 1.0.12 → 2.0.2

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 (93) hide show
  1. package/.ai-agents/agent-guardrails.md +58 -0
  2. package/.ai-agents/mcp-template.jsonc +34 -0
  3. package/.ai-agents/rules/agent-testing-guidelines.md +545 -0
  4. package/.ai-agents/rules/architecture.md +52 -0
  5. package/.ai-agents/rules/communication.md +122 -0
  6. package/.ai-agents/rules/continuous-learning.md +55 -0
  7. package/.ai-agents/rules/git-safe-commands.md +34 -0
  8. package/.ai-agents/rules/integrity-and-test-ethics.md +223 -0
  9. package/.ai-agents/rules/local-development.md +252 -0
  10. package/.ai-agents/rules/merge-requirements.md +231 -0
  11. package/.ai-agents/rules/pr-workflow-completeness.md +191 -0
  12. package/.ai-agents/rules/simplicity.md +112 -0
  13. package/.ai-agents/rules/software-development-lifecycle.md +276 -0
  14. package/.ai-agents/rules/spike-first-development.md +199 -0
  15. package/.ai-agents/rules/successful-debugging-patterns.md +313 -0
  16. package/.ai-agents/scripts/cleanup-branch.ts +278 -0
  17. package/.ai-agents/scripts/exec-with-timeout.ts +122 -0
  18. package/.ai-agents/scripts/prep-issue.sh +162 -0
  19. package/.ai-agents/templates/evidence/Design-Evidence.md +30 -0
  20. package/.ai-agents/templates/evidence/Implementation-BugEvidence.md +48 -0
  21. package/.ai-agents/templates/evidence/Implementation-FeatureEvidence.md +54 -0
  22. package/.ai-agents/templates/evidence/Spec-Evidence.md +19 -0
  23. package/.ai-agents/templates/help/HelpNeeded.md +14 -0
  24. package/.ai-agents/templates/retrospective/RETROSPECTIVE-TEMPLATE.md +55 -0
  25. package/.ai-agents/templates/specs/BUGSPEC-TEMPLATE.md +37 -0
  26. package/.ai-agents/templates/specs/FEATURESPEC-TEMPLATE.md +29 -0
  27. package/.ai-agents/templates/specs/TECHSPEC-TEMPLATE.md +39 -0
  28. package/.ai-agents/workflows/design.md +121 -0
  29. package/.ai-agents/workflows/implement.md +170 -0
  30. package/.ai-agents/workflows/resolve.md +152 -0
  31. package/.ai-agents/workflows/retrospect.md +84 -0
  32. package/.ai-agents/workflows/spec.md +103 -0
  33. package/.ai-agents/workflows/test.md +90 -0
  34. package/.cursor/rules/cursor-rules.mdc +8 -0
  35. package/.cursor/rules/design.mdc +4 -0
  36. package/.cursor/rules/implement.mdc +6 -0
  37. package/.cursor/rules/resolve.mdc +5 -0
  38. package/.cursor/rules/retrospect.mdc +4 -0
  39. package/.cursor/rules/spec.mdc +4 -0
  40. package/.cursor/rules/test.mdc +5 -0
  41. package/.windsurf/rules/windsurf-rules.md +7 -0
  42. package/.windsurf/workflows/resolve-issue.md +6 -0
  43. package/.windsurf/workflows/retrospect.md +6 -0
  44. package/.windsurf/workflows/start-design.md +6 -0
  45. package/.windsurf/workflows/start-impl.md +6 -0
  46. package/.windsurf/workflows/start-spec.md +6 -0
  47. package/.windsurf/workflows/start-tests.md +6 -0
  48. package/CHANGELOG.md +66 -0
  49. package/CODEOWNERS +24 -0
  50. package/DISTRIBUTION.md +6 -6
  51. package/PUBLISH_INSTRUCTIONS.md +93 -0
  52. package/README.md +330 -104
  53. package/bin/fraim.js +49 -3
  54. package/index.js +30 -3
  55. package/install.sh +58 -58
  56. package/labels.json +52 -0
  57. package/linkedin-post.md +23 -0
  58. package/package.json +12 -7
  59. package/sample_package.json +18 -0
  60. package/setup.js +733 -384
  61. package/test-utils.ts +118 -0
  62. package/tsconfig.json +22 -0
  63. package/agents/claude/CLAUDE.md +0 -42
  64. package/agents/cursor/rules/architecture.mdc +0 -49
  65. package/agents/cursor/rules/continuous-learning.mdc +0 -48
  66. package/agents/cursor/rules/cursor-workflow.mdc +0 -29
  67. package/agents/cursor/rules/design.mdc +0 -25
  68. package/agents/cursor/rules/implement.mdc +0 -26
  69. package/agents/cursor/rules/local-development.mdc +0 -104
  70. package/agents/cursor/rules/prep.mdc +0 -15
  71. package/agents/cursor/rules/resolve.mdc +0 -46
  72. package/agents/cursor/rules/simplicity.mdc +0 -18
  73. package/agents/cursor/rules/software-development-lifecycle.mdc +0 -41
  74. package/agents/cursor/rules/test.mdc +0 -25
  75. package/agents/windsurf/rules/architecture.md +0 -49
  76. package/agents/windsurf/rules/continuous-learning.md +0 -47
  77. package/agents/windsurf/rules/local-development.md +0 -103
  78. package/agents/windsurf/rules/remote-development.md +0 -22
  79. package/agents/windsurf/rules/simplicity.md +0 -17
  80. package/agents/windsurf/rules/windsurf-workflow.md +0 -28
  81. package/agents/windsurf/workflows/prep.md +0 -20
  82. package/agents/windsurf/workflows/resolve-issue.md +0 -47
  83. package/agents/windsurf/workflows/start-design.md +0 -26
  84. package/agents/windsurf/workflows/start-impl.md +0 -27
  85. package/agents/windsurf/workflows/start-tests.md +0 -26
  86. package/github/phase-change.yml +0 -218
  87. package/github/status-change.yml +0 -68
  88. package/github/sync-on-pr-review.yml +0 -66
  89. package/scripts/__init__.py +0 -10
  90. package/scripts/cli.py +0 -141
  91. package/setup.py +0 -0
  92. package/test-config.json +0 -32
  93. package/workflows/setup-fraim.yml +0 -147
package/install.sh CHANGED
@@ -1,58 +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!"
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/FRAIM/master/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/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/labels.json ADDED
@@ -0,0 +1,52 @@
1
+ [
2
+ {
3
+ "name": "phase:spec",
4
+ "color": "008672",
5
+ "description": "Specification creation phase"
6
+ },
7
+ {
8
+ "name": "phase:design",
9
+ "color": "0075ca",
10
+ "description": "Design and RFC creation phase"
11
+ },
12
+ {
13
+ "name": "phase:impl",
14
+ "color": "7057ff",
15
+ "description": "Implementation and development phase"
16
+ },
17
+ {
18
+ "name": "phase:tests",
19
+ "color": "008672",
20
+ "description": "Testing and validation phase"
21
+ },
22
+ {
23
+ "name": "status:wip",
24
+ "color": "fbca04",
25
+ "description": "Work in progress"
26
+ },
27
+ {
28
+ "name": "status:needs-review",
29
+ "color": "fbca04",
30
+ "description": "Ready for review"
31
+ },
32
+ {
33
+ "name": "status:complete",
34
+ "color": "0e8a16",
35
+ "description": "Work completed"
36
+ },
37
+ {
38
+ "name": "ai-agent:cursor",
39
+ "color": "c5def5",
40
+ "description": "Assigned to Cursor"
41
+ },
42
+ {
43
+ "name": "ai-agent:claude",
44
+ "color": "c5def5",
45
+ "description": "Assigned to Claude"
46
+ },
47
+ {
48
+ "name": "ai-agent:windsurf",
49
+ "color": "c5def5",
50
+ "description": "Assigned to Windsurf"
51
+ }
52
+ ]
@@ -0,0 +1,23 @@
1
+ # FRAIMv2 - The Future of how we work with AI?
2
+
3
+ 🚀 **AI coding agents are brilliant but chaotic.**
4
+
5
+ They can build prototypes fast, but fail spectacularly at production-ready code.
6
+
7
+ **Solution: Manage them like human developers.**
8
+
9
+ FRAIMv2 applies enterprise-grade discipline to AI agent teams:
10
+ • Clear guardrails to prevent costly mistakes
11
+ • Structured workflows to avoid chaos
12
+ • Evidence-based validation (not "looks good" claims)
13
+ • Learning systems to improve over time
14
+ • Debugging patterns and anti-patterns
15
+ • Balance between determinism and creativity
16
+
17
+ **Result:** Transform from solo developer to AI manager orchestrating production-ready code.
18
+
19
+ Is this the future of how we work?
20
+
21
+ Ready to transform how you work with AI? Check out FRAIM: https://github.com/mathursrus/FRAIM
22
+
23
+ #AI #SoftwareDevelopment #Productivity #Innovation #TechLeadership #Coding #Agile #DevOps
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "fraim-framework",
3
- "version": "1.0.12",
4
- "description": "FRAIM: Framework for Rigor-based AI Management - Where humans become AI managers through rigorous methodology",
3
+ "version": "2.0.2",
4
+ "description": "FRAIM v2: Framework for Rigor-based AI Management - Transform from solo developer to AI manager orchestrating production-ready code with enterprise-grade discipline",
5
5
  "main": "index.js",
6
6
  "bin": {
7
7
  "fraim": "./bin/fraim.js",
@@ -10,12 +10,11 @@
10
10
  "scripts": {
11
11
  "setup": "node setup.js",
12
12
  "test": "echo \"Error: no test specified\" && exit 1",
13
- "postinstall": "echo '🚀 FRAIM installed! Run: npx fraim-framework --help'"
13
+ "postinstall": "echo '🚀 FRAIM v2 installed! Run: fraim --help'"
14
14
  },
15
15
  "repository": {
16
16
  "type": "git",
17
- "url": "git+https://github.com/mathursrus/Ashley-Calendar-AI.git",
18
- "directory": "FRAIM"
17
+ "url": "git+https://github.com/mathursrus/FRAIM.git"
19
18
  },
20
19
  "keywords": [
21
20
  "fraim",
@@ -38,12 +37,18 @@
38
37
  "author": "Sid Mathur <sid.mathur@gmail.com>",
39
38
  "license": "MIT",
40
39
  "bugs": {
41
- "url": "https://github.com/mathursrus/Ashley-Calendar-AI/issues"
40
+ "url": "https://github.com/mathursrus/FRAIM/issues"
42
41
  },
43
- "homepage": "https://github.com/mathursrus/Ashley-Calendar-AI/tree/master/FRAIM#readme",
42
+ "homepage": "https://github.com/mathursrus/FRAIM#readme",
44
43
  "engines": {
45
44
  "node": ">=16.0.0"
46
45
  },
46
+ "devDependencies": {
47
+ "typescript": "^5.0.0",
48
+ "@types/node": "^20.0.0",
49
+ "tsx": "^4.0.0",
50
+ "dotenv": "^16.0.0"
51
+ },
47
52
  "publishConfig": {
48
53
  "access": "public"
49
54
  }
@@ -0,0 +1,18 @@
1
+ {
2
+ "scripts": {
3
+ "build": "tsc",
4
+ "dev": "npx tsx --watch src/server.ts > server.log 2>&1",
5
+ "test": "set EXCLUDE_TAGS=baml,flaky,failing&& npx tsx --test --test-concurrency=1 --test-reporter tap %npm_config_test% > test.log 2>&1",
6
+ "test-smoke": "set TAGS=smoke&& npx tsx --test --test-concurrency=1 --test-reporter tap %npm_config_test% > test.log 2>&1",
7
+ "test-smoke-ci": "set TAGS=smoke&& npx tsx --test --test-concurrency=1 --test-reporter tap test*.ts",
8
+ "test-flaky": "set TAGS=flaky&& npx tsx --test --test-concurrency=1 --test-reporter tap %npm_config_test% > test.log 2>&1",
9
+ "test-failing": "set TAGS=failing&& npx tsx --test --test-concurrency=1 --test-reporter tap %npm_config_test% > test.log 2>&1",
10
+ "test-baml": "set TAGS=baml&& npx tsx --test --test-concurrency=1 --test-reporter tap %npm_config_test% > test.log 2>&1",
11
+ "test-all": "tsx --test --test-concurrency=1 --test-reporter tap",
12
+ "test-all-ci": "set EXCLUDE_TAGS=flaky,failing&& tsx --test --test-concurrency=1 --test-reporter tap test*.ts",
13
+ "generate": "baml-cli generate",
14
+ "lint": "eslint *.ts",
15
+ "lint:fix": "eslint *.ts --fix"
16
+ }
17
+ }
18
+