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.
- package/.ai-agents/agent-guardrails.md +58 -0
- package/.ai-agents/mcp-template.jsonc +34 -0
- package/.ai-agents/rules/agent-testing-guidelines.md +545 -0
- package/.ai-agents/rules/architecture.md +52 -0
- package/.ai-agents/rules/communication.md +122 -0
- package/.ai-agents/rules/continuous-learning.md +55 -0
- package/.ai-agents/rules/git-safe-commands.md +34 -0
- package/.ai-agents/rules/integrity-and-test-ethics.md +223 -0
- package/.ai-agents/rules/local-development.md +252 -0
- package/.ai-agents/rules/merge-requirements.md +231 -0
- package/.ai-agents/rules/pr-workflow-completeness.md +191 -0
- package/.ai-agents/rules/simplicity.md +112 -0
- package/.ai-agents/rules/software-development-lifecycle.md +276 -0
- package/.ai-agents/rules/spike-first-development.md +199 -0
- package/.ai-agents/rules/successful-debugging-patterns.md +313 -0
- package/.ai-agents/scripts/cleanup-branch.ts +278 -0
- package/.ai-agents/scripts/exec-with-timeout.ts +122 -0
- package/.ai-agents/scripts/prep-issue.sh +162 -0
- package/.ai-agents/templates/evidence/Design-Evidence.md +30 -0
- package/.ai-agents/templates/evidence/Implementation-BugEvidence.md +48 -0
- package/.ai-agents/templates/evidence/Implementation-FeatureEvidence.md +54 -0
- package/.ai-agents/templates/evidence/Spec-Evidence.md +19 -0
- package/.ai-agents/templates/help/HelpNeeded.md +14 -0
- package/.ai-agents/templates/retrospective/RETROSPECTIVE-TEMPLATE.md +55 -0
- package/.ai-agents/templates/specs/BUGSPEC-TEMPLATE.md +37 -0
- package/.ai-agents/templates/specs/FEATURESPEC-TEMPLATE.md +29 -0
- package/.ai-agents/templates/specs/TECHSPEC-TEMPLATE.md +39 -0
- package/.ai-agents/workflows/design.md +121 -0
- package/.ai-agents/workflows/implement.md +170 -0
- package/.ai-agents/workflows/resolve.md +152 -0
- package/.ai-agents/workflows/retrospect.md +84 -0
- package/.ai-agents/workflows/spec.md +103 -0
- package/.ai-agents/workflows/test.md +90 -0
- package/.cursor/rules/cursor-rules.mdc +8 -0
- package/.cursor/rules/design.mdc +4 -0
- package/.cursor/rules/implement.mdc +6 -0
- package/.cursor/rules/resolve.mdc +5 -0
- package/.cursor/rules/retrospect.mdc +4 -0
- package/.cursor/rules/spec.mdc +4 -0
- package/.cursor/rules/test.mdc +5 -0
- package/.windsurf/rules/windsurf-rules.md +7 -0
- package/.windsurf/workflows/resolve-issue.md +6 -0
- package/.windsurf/workflows/retrospect.md +6 -0
- package/.windsurf/workflows/start-design.md +6 -0
- package/.windsurf/workflows/start-impl.md +6 -0
- package/.windsurf/workflows/start-spec.md +6 -0
- package/.windsurf/workflows/start-tests.md +6 -0
- package/CHANGELOG.md +66 -0
- package/CODEOWNERS +24 -0
- package/DISTRIBUTION.md +6 -6
- package/PUBLISH_INSTRUCTIONS.md +93 -0
- package/README.md +330 -104
- package/bin/fraim.js +49 -3
- package/index.js +30 -3
- package/install.sh +58 -58
- package/labels.json +52 -0
- package/linkedin-post.md +23 -0
- package/package.json +12 -7
- package/sample_package.json +18 -0
- package/setup.js +733 -384
- package/test-utils.ts +118 -0
- package/tsconfig.json +22 -0
- package/agents/claude/CLAUDE.md +0 -42
- package/agents/cursor/rules/architecture.mdc +0 -49
- package/agents/cursor/rules/continuous-learning.mdc +0 -48
- package/agents/cursor/rules/cursor-workflow.mdc +0 -29
- package/agents/cursor/rules/design.mdc +0 -25
- package/agents/cursor/rules/implement.mdc +0 -26
- package/agents/cursor/rules/local-development.mdc +0 -104
- package/agents/cursor/rules/prep.mdc +0 -15
- package/agents/cursor/rules/resolve.mdc +0 -46
- package/agents/cursor/rules/simplicity.mdc +0 -18
- package/agents/cursor/rules/software-development-lifecycle.mdc +0 -41
- package/agents/cursor/rules/test.mdc +0 -25
- package/agents/windsurf/rules/architecture.md +0 -49
- package/agents/windsurf/rules/continuous-learning.md +0 -47
- package/agents/windsurf/rules/local-development.md +0 -103
- package/agents/windsurf/rules/remote-development.md +0 -22
- package/agents/windsurf/rules/simplicity.md +0 -17
- package/agents/windsurf/rules/windsurf-workflow.md +0 -28
- package/agents/windsurf/workflows/prep.md +0 -20
- package/agents/windsurf/workflows/resolve-issue.md +0 -47
- package/agents/windsurf/workflows/start-design.md +0 -26
- package/agents/windsurf/workflows/start-impl.md +0 -27
- package/agents/windsurf/workflows/start-tests.md +0 -26
- package/github/phase-change.yml +0 -218
- package/github/status-change.yml +0 -68
- package/github/sync-on-pr-review.yml +0 -66
- package/scripts/__init__.py +0 -10
- package/scripts/cli.py +0 -141
- package/setup.py +0 -0
- package/test-config.json +0 -32
- package/workflows/setup-fraim.yml +0 -147
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [2.0.0] - 2024-12-19
|
|
6
|
+
|
|
7
|
+
### 🚀 Major Release: FRAIM v2 - The Future of AI-Assisted Development
|
|
8
|
+
|
|
9
|
+
#### ✨ New Features
|
|
10
|
+
- **Complete Generic Framework**: Removed all Ashley-specific IP, making FRAIM truly universal
|
|
11
|
+
- **Enhanced Rule System**: 13 comprehensive rule files covering all aspects of AI agent management
|
|
12
|
+
- **Simplified Label System**: Streamlined to 9 essential labels matching real-world usage
|
|
13
|
+
- **Spec Workflow**: Added specification phase for requirements and user experience definition
|
|
14
|
+
- **Timeout Management**: Advanced timeout scripts with output visibility for long-running tasks
|
|
15
|
+
- **Evidence-Based Validation**: Mandatory test evidence collection and validation
|
|
16
|
+
- **Systematic Debugging**: Structured debugging patterns with learning capture
|
|
17
|
+
|
|
18
|
+
#### 🔧 Improvements
|
|
19
|
+
- **Single Install Method**: Simplified to `npm install -g fraim-framework`
|
|
20
|
+
- **Better Documentation**: Comprehensive README with marketing-style positioning
|
|
21
|
+
- **Example Test Cases**: Complete example with tagging system and documentation
|
|
22
|
+
- **TypeScript Support**: Full TypeScript compilation and type safety
|
|
23
|
+
- **Git Safety**: Safe Git commands preventing agent hangs
|
|
24
|
+
- **Merge Requirements**: Advanced branch management with conflict resolution
|
|
25
|
+
|
|
26
|
+
#### 🛡️ Security & Reliability
|
|
27
|
+
- **Agent Integrity Rules**: Prevents "fake it till you make it" behavior
|
|
28
|
+
- **Test Ethics**: Mandatory evidence collection and validation
|
|
29
|
+
- **Communication Standards**: Clear accountability and progress reporting
|
|
30
|
+
- **Architecture Discipline**: Clean separation of concerns and technical debt prevention
|
|
31
|
+
|
|
32
|
+
#### 📚 Documentation
|
|
33
|
+
- **Marketing README**: Compelling documentation positioning FRAIM as the future
|
|
34
|
+
- **Problem-Solution Mapping**: Each rule clearly mapped to specific problems
|
|
35
|
+
- **Human-Agent Parallels**: Clear comparison between human and AI development
|
|
36
|
+
- **Success Stories**: Realistic testimonials and quantified benefits
|
|
37
|
+
|
|
38
|
+
#### 🎯 Workflow Enhancements
|
|
39
|
+
- **RIGOR Methodology**: Reviews, Isolation, GitOps, Observability, Retrospectives
|
|
40
|
+
- **Phase-Based Development**: Spec → Design → Implementation → Testing → Resolution
|
|
41
|
+
- **Agent Coordination**: Seamless handoffs between multiple AI agents
|
|
42
|
+
- **Continuous Learning**: Retrospective-driven improvement system
|
|
43
|
+
|
|
44
|
+
#### 🔄 Breaking Changes
|
|
45
|
+
- **Simplified Labels**: Reduced from 15 to 9 essential labels
|
|
46
|
+
- **Install Method**: Single npm install method (removed curl, Python options)
|
|
47
|
+
- **Generic Examples**: All Ashley-specific examples replaced with universal patterns
|
|
48
|
+
|
|
49
|
+
#### 🐛 Bug Fixes
|
|
50
|
+
- **TypeScript Compilation**: Fixed all compilation issues
|
|
51
|
+
- **Import Dependencies**: Resolved missing dependencies
|
|
52
|
+
- **Test Utilities**: Made generic and framework-agnostic
|
|
53
|
+
- **Repository References**: Updated all URLs to point to FRAIM repository
|
|
54
|
+
|
|
55
|
+
#### 📦 Dependencies
|
|
56
|
+
- Added TypeScript support with proper type definitions
|
|
57
|
+
- Added tsx for TypeScript execution
|
|
58
|
+
- Added dotenv for environment management
|
|
59
|
+
- Updated Node.js engine requirement to >=16.0.0
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## [1.0.12] - Previous Release
|
|
64
|
+
- Initial FRAIM framework with Ashley-specific implementations
|
|
65
|
+
- Basic rule system and workflows
|
|
66
|
+
- GitHub integration and automation
|
package/CODEOWNERS
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# This file defines the code owners for the FRAIM repository
|
|
2
|
+
# Code owners are automatically requested for review when someone opens a PR that modifies code they own
|
|
3
|
+
# See: https://docs.github.com/en/repositories/managing-your-codebase-in-github/about-code-owners
|
|
4
|
+
|
|
5
|
+
# Default owners for everything in the repo
|
|
6
|
+
* @mathursrus
|
|
7
|
+
|
|
8
|
+
# Specific ownership for different parts of the codebase
|
|
9
|
+
/agents/ @mathursrus
|
|
10
|
+
/rules/ @mathursrus
|
|
11
|
+
/workflows/ @mathursrus
|
|
12
|
+
/templates/ @mathursrus
|
|
13
|
+
/scripts/ @mathursrus
|
|
14
|
+
/.github/ @mathursrus
|
|
15
|
+
|
|
16
|
+
# Documentation
|
|
17
|
+
/docs/ @mathursrus
|
|
18
|
+
*.md @mathursrus
|
|
19
|
+
|
|
20
|
+
# Configuration files
|
|
21
|
+
*.json @mathursrus
|
|
22
|
+
*.jsonc @mathursrus
|
|
23
|
+
*.yml @mathursrus
|
|
24
|
+
*.yaml @mathursrus
|
package/DISTRIBUTION.md
CHANGED
|
@@ -160,17 +160,17 @@ npx @fraim/framework init
|
|
|
160
160
|
### Primary
|
|
161
161
|
- **NPX**: `npx @fraim/framework`
|
|
162
162
|
- **Python**: `pip install fraim-framework`
|
|
163
|
-
- **GitHub**: `https://github.com/mathursrus/
|
|
163
|
+
- **GitHub**: `https://github.com/mathursrus/FRAIM`
|
|
164
164
|
|
|
165
165
|
### Documentation
|
|
166
166
|
- **Main Docs**: `https://fraim.dev`
|
|
167
|
-
- **GitHub Wiki**: `https://github.com/mathursrus/
|
|
168
|
-
- **Examples**: `https://github.com/mathursrus/
|
|
167
|
+
- **GitHub Wiki**: `https://github.com/mathursrus/FRAIM/wiki`
|
|
168
|
+
- **Examples**: `https://github.com/mathursrus/FRAIM/tree/master/examples`
|
|
169
169
|
|
|
170
170
|
### Support
|
|
171
|
-
- **Issues**: `https://github.com/mathursrus/
|
|
172
|
-
- **Discussions**: `https://github.com/mathursrus/
|
|
173
|
-
- **Community**: `https://github.com/mathursrus/
|
|
171
|
+
- **Issues**: `https://github.com/mathursrus/FRAIM/issues`
|
|
172
|
+
- **Discussions**: `https://github.com/mathursrus/FRAIM/discussions`
|
|
173
|
+
- **Community**: `https://github.com/mathursrus/FRAIM/community`
|
|
174
174
|
|
|
175
175
|
## 🎯 Next Steps
|
|
176
176
|
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
# Publishing FRAIM v2 to npm
|
|
2
|
+
|
|
3
|
+
## Prerequisites
|
|
4
|
+
1. **npm account**: You need an npm account to publish packages
|
|
5
|
+
2. **npm CLI**: Make sure you have npm installed and updated
|
|
6
|
+
|
|
7
|
+
## Step 1: Login to npm
|
|
8
|
+
```bash
|
|
9
|
+
npm login
|
|
10
|
+
```
|
|
11
|
+
Enter your npm username, password, and email when prompted.
|
|
12
|
+
|
|
13
|
+
## Step 2: Verify Login
|
|
14
|
+
```bash
|
|
15
|
+
npm whoami
|
|
16
|
+
```
|
|
17
|
+
Should display your npm username.
|
|
18
|
+
|
|
19
|
+
## Step 3: Test the Package (Optional but Recommended)
|
|
20
|
+
```bash
|
|
21
|
+
# Test the package locally
|
|
22
|
+
npm pack
|
|
23
|
+
# This creates a .tgz file you can inspect
|
|
24
|
+
|
|
25
|
+
# Test installation locally
|
|
26
|
+
npm install -g ./fraim-framework-2.0.0.tgz
|
|
27
|
+
fraim --help
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Step 4: Publish to npm
|
|
31
|
+
```bash
|
|
32
|
+
npm publish
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Step 5: Verify Publication
|
|
36
|
+
```bash
|
|
37
|
+
# Check the package on npm
|
|
38
|
+
npm view fraim-framework
|
|
39
|
+
|
|
40
|
+
# Test installation from npm
|
|
41
|
+
npm install -g fraim-framework@2.0.0
|
|
42
|
+
fraim --help
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## What's Included in v2.0.0
|
|
46
|
+
|
|
47
|
+
### 🚀 Major Features
|
|
48
|
+
- **Complete Generic Framework**: No Ashley-specific IP
|
|
49
|
+
- **13 Comprehensive Rule Files**: Full AI agent management
|
|
50
|
+
- **Simplified Label System**: 9 essential labels
|
|
51
|
+
- **Spec Workflow**: Requirements and UX definition
|
|
52
|
+
- **Timeout Management**: Advanced script execution with visibility
|
|
53
|
+
- **Evidence-Based Validation**: Mandatory test evidence
|
|
54
|
+
- **Systematic Debugging**: Structured debugging patterns
|
|
55
|
+
|
|
56
|
+
### 📦 Package Contents
|
|
57
|
+
- `bin/fraim.js` - Main CLI executable
|
|
58
|
+
- `index.js` - Main entry point
|
|
59
|
+
- `setup.js` - Setup script for new projects
|
|
60
|
+
- `package.json` - Package configuration (v2.0.0)
|
|
61
|
+
- `.ai-agents/` - Complete rule system
|
|
62
|
+
- `examples/` - Example test cases with documentation
|
|
63
|
+
- `CHANGELOG.md` - Detailed changelog
|
|
64
|
+
- `README.md` - Marketing-style documentation
|
|
65
|
+
|
|
66
|
+
### 🎯 Installation
|
|
67
|
+
```bash
|
|
68
|
+
npm install -g fraim-framework
|
|
69
|
+
fraim init
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Post-Publication Tasks
|
|
73
|
+
|
|
74
|
+
1. **Update README**: Ensure all installation instructions use the new v2 commands
|
|
75
|
+
2. **GitHub Release**: Create a GitHub release for v2.0.0
|
|
76
|
+
3. **Documentation**: Update any external documentation
|
|
77
|
+
4. **Social Media**: Share the LinkedIn post about v2
|
|
78
|
+
|
|
79
|
+
## Rollback Plan (if needed)
|
|
80
|
+
```bash
|
|
81
|
+
# If you need to unpublish (only works within 24 hours)
|
|
82
|
+
npm unpublish fraim-framework@2.0.0
|
|
83
|
+
|
|
84
|
+
# Or deprecate the version
|
|
85
|
+
npm deprecate fraim-framework@2.0.0 "Use latest version instead"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Success Metrics
|
|
89
|
+
- Package successfully published to npm
|
|
90
|
+
- Installation works: `npm install -g fraim-framework`
|
|
91
|
+
- CLI works: `fraim --help`
|
|
92
|
+
- Setup works: `fraim init`
|
|
93
|
+
- All examples and documentation updated
|