@mytechtoday/augment-extensions 0.1.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.
- package/AGENTS.md +152 -0
- package/LICENSE +22 -0
- package/MODULES.md +124 -0
- package/README.md +195 -0
- package/cli/dist/cli.d.ts +3 -0
- package/cli/dist/cli.d.ts.map +1 -0
- package/cli/dist/cli.js +100 -0
- package/cli/dist/cli.js.map +1 -0
- package/cli/dist/commands/init.d.ts +6 -0
- package/cli/dist/commands/init.d.ts.map +1 -0
- package/cli/dist/commands/init.js +137 -0
- package/cli/dist/commands/init.js.map +1 -0
- package/cli/dist/commands/link.d.ts +6 -0
- package/cli/dist/commands/link.d.ts.map +1 -0
- package/cli/dist/commands/link.js +85 -0
- package/cli/dist/commands/link.js.map +1 -0
- package/cli/dist/commands/list.d.ts +7 -0
- package/cli/dist/commands/list.d.ts.map +1 -0
- package/cli/dist/commands/list.js +122 -0
- package/cli/dist/commands/list.js.map +1 -0
- package/cli/dist/commands/search.d.ts +6 -0
- package/cli/dist/commands/search.d.ts.map +1 -0
- package/cli/dist/commands/search.js +16 -0
- package/cli/dist/commands/search.js.map +1 -0
- package/cli/dist/commands/show.d.ts +6 -0
- package/cli/dist/commands/show.d.ts.map +1 -0
- package/cli/dist/commands/show.js +106 -0
- package/cli/dist/commands/show.js.map +1 -0
- package/cli/dist/commands/update.d.ts +6 -0
- package/cli/dist/commands/update.d.ts.map +1 -0
- package/cli/dist/commands/update.js +19 -0
- package/cli/dist/commands/update.js.map +1 -0
- package/modules/coding-standards/typescript/README.md +45 -0
- package/modules/coding-standards/typescript/module.json +27 -0
- package/modules/coding-standards/typescript/rules/naming-conventions.md +225 -0
- package/modules/workflows/beads/README.md +135 -0
- package/modules/workflows/beads/examples/complete-workflow-example.md +278 -0
- package/modules/workflows/beads/module.json +54 -0
- package/modules/workflows/beads/rules/best-practices.md +398 -0
- package/modules/workflows/beads/rules/file-format.md +283 -0
- package/modules/workflows/beads/rules/manual-setup.md +315 -0
- package/modules/workflows/beads/rules/workflow.md +285 -0
- package/modules/workflows/openspec/README.md +96 -0
- package/modules/workflows/openspec/examples/complete-change-example.md +230 -0
- package/modules/workflows/openspec/module.json +53 -0
- package/modules/workflows/openspec/rules/best-practices.md +272 -0
- package/modules/workflows/openspec/rules/manual-setup.md +231 -0
- package/modules/workflows/openspec/rules/spec-format.md +193 -0
- package/modules/workflows/openspec/rules/workflow.md +189 -0
- package/package.json +72 -0
package/AGENTS.md
ADDED
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Augment Extensions - AI Agent Integration
|
|
2
|
+
|
|
3
|
+
This repository provides extension modules for Augment Code AI that exceed the standard `.augment/` character limit.
|
|
4
|
+
|
|
5
|
+
## For AI Agents
|
|
6
|
+
|
|
7
|
+
### Discovery
|
|
8
|
+
|
|
9
|
+
You can discover and use extension modules through the `augx` CLI:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# List all available modules
|
|
13
|
+
augx list
|
|
14
|
+
|
|
15
|
+
# Show module details
|
|
16
|
+
augx show <module-name>
|
|
17
|
+
|
|
18
|
+
# Search for modules
|
|
19
|
+
augx search <keyword>
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### Usage in Projects
|
|
23
|
+
|
|
24
|
+
When working on a project that has Augment Extensions linked:
|
|
25
|
+
|
|
26
|
+
1. **Check linked modules**: `augx list --linked`
|
|
27
|
+
2. **View module content**: `augx show <module-name>`
|
|
28
|
+
3. **Apply module rules**: Follow the guidelines in the module's rules/ directory
|
|
29
|
+
|
|
30
|
+
### Module Structure
|
|
31
|
+
|
|
32
|
+
Each module contains:
|
|
33
|
+
- `module.json` - Metadata and configuration
|
|
34
|
+
- `rules/` - Markdown files with detailed guidelines
|
|
35
|
+
- `examples/` - Code examples demonstrating best practices
|
|
36
|
+
- `README.md` - Module overview
|
|
37
|
+
|
|
38
|
+
### Integration Workflow
|
|
39
|
+
|
|
40
|
+
1. Human initializes: `augx init`
|
|
41
|
+
2. Human links modules: `augx link coding-standards/typescript`
|
|
42
|
+
3. AI agent queries: `augx show typescript-standards`
|
|
43
|
+
4. AI agent applies rules from module content
|
|
44
|
+
|
|
45
|
+
### CLI Commands Reference
|
|
46
|
+
|
|
47
|
+
- `augx list` - List all available modules
|
|
48
|
+
- `augx list --linked` - List modules linked to current project
|
|
49
|
+
- `augx show <module>` - Display module content
|
|
50
|
+
- `augx search <term>` - Search for modules
|
|
51
|
+
- `augx update` - Update all linked modules
|
|
52
|
+
- `augx version` - Show CLI version
|
|
53
|
+
|
|
54
|
+
## Module Types
|
|
55
|
+
|
|
56
|
+
1. **coding-standards** - Language/framework specific standards
|
|
57
|
+
2. **domain-rules** - Domain-specific guidelines (web, API, security, etc.)
|
|
58
|
+
3. **workflows** - Process and methodology integration (OpenSpec, Beads, etc.)
|
|
59
|
+
4. **examples** - Extensive code examples and patterns
|
|
60
|
+
|
|
61
|
+
## Character Limit Context
|
|
62
|
+
|
|
63
|
+
- Standard `.augment/` limit: ~49,400 characters
|
|
64
|
+
- Extension modules: No limit (stored separately)
|
|
65
|
+
- Modules are loaded on-demand when relevant to current task
|
|
66
|
+
|
|
67
|
+
## Best Practices for AI Agents
|
|
68
|
+
|
|
69
|
+
1. **Query before applying**: Always check module content before applying rules
|
|
70
|
+
2. **Respect versions**: Use pinned versions for consistency
|
|
71
|
+
3. **Combine modules**: Multiple modules can be active simultaneously
|
|
72
|
+
4. **Report issues**: If module content conflicts, notify the human
|
|
73
|
+
|
|
74
|
+
## Example Usage
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
# AI agent working on TypeScript project
|
|
78
|
+
$ augx list --linked
|
|
79
|
+
typescript-standards (v1.0.0)
|
|
80
|
+
react-patterns (v2.1.0)
|
|
81
|
+
|
|
82
|
+
$ augx show typescript-standards
|
|
83
|
+
# Returns full module content including all rules and examples
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## OpenSpec Integration
|
|
89
|
+
|
|
90
|
+
This repository uses **OpenSpec** for spec-driven development.
|
|
91
|
+
|
|
92
|
+
### OpenSpec Workflow
|
|
93
|
+
|
|
94
|
+
1. **Draft Change Proposal**: Create `openspec/changes/[change-name]/proposal.md`
|
|
95
|
+
2. **Review & Align**: Create spec deltas in `openspec/changes/[change-name]/specs/`
|
|
96
|
+
3. **Implement Tasks**: Create `openspec/changes/[change-name]/tasks.md` and implement
|
|
97
|
+
4. **Archive**: Move completed change to `openspec/archive/[change-name]/`
|
|
98
|
+
|
|
99
|
+
### OpenSpec Files
|
|
100
|
+
|
|
101
|
+
- `openspec/project-context.md` - Project overview and architecture
|
|
102
|
+
- `openspec/specs/` - Source of truth specifications
|
|
103
|
+
- `openspec/changes/` - Proposed changes (deltas)
|
|
104
|
+
- `openspec/archive/` - Completed changes
|
|
105
|
+
|
|
106
|
+
### For AI Agents
|
|
107
|
+
|
|
108
|
+
When making architectural changes:
|
|
109
|
+
1. Create a change proposal in `openspec/changes/`
|
|
110
|
+
2. Define spec deltas (ADDED/MODIFIED/REMOVED sections)
|
|
111
|
+
3. Break down into tasks
|
|
112
|
+
4. Implement and archive when complete
|
|
113
|
+
|
|
114
|
+
**Learn More**: See `modules/workflows/openspec/` for comprehensive workflow documentation.
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Beads Integration
|
|
119
|
+
|
|
120
|
+
This repository uses **Beads** for task tracking and memory.
|
|
121
|
+
|
|
122
|
+
### Beads Workflow
|
|
123
|
+
|
|
124
|
+
1. **Create Task**: Append to `.beads/issues.jsonl` with unique hash-based ID
|
|
125
|
+
2. **Add Dependencies**: Use `blocks` and `blocked_by` fields
|
|
126
|
+
3. **Find Ready Tasks**: Tasks with no open blockers
|
|
127
|
+
4. **Work on Task**: Update status to `in-progress`, add comments
|
|
128
|
+
5. **Close Task**: Update status to `closed`
|
|
129
|
+
|
|
130
|
+
### Beads Files
|
|
131
|
+
|
|
132
|
+
- `.beads/issues.jsonl` - All issues (append-only JSONL log)
|
|
133
|
+
- `.beads/config.json` - Beads configuration
|
|
134
|
+
- `.beads/cache.db` - SQLite cache (gitignored, CLI only)
|
|
135
|
+
|
|
136
|
+
### For AI Agents
|
|
137
|
+
|
|
138
|
+
When tracking work:
|
|
139
|
+
1. Create tasks by appending JSON to `.beads/issues.jsonl`
|
|
140
|
+
2. Use hash-based IDs: `bd-<hash>` (e.g., `bd-a1b2`)
|
|
141
|
+
3. Track dependencies with `blocks`/`blocked_by` fields
|
|
142
|
+
4. Find ready tasks (status: "open", no blockers)
|
|
143
|
+
5. Update status and add comments as work progresses
|
|
144
|
+
|
|
145
|
+
**Task States**: `open`, `in-progress`, `blocked`, `closed`
|
|
146
|
+
|
|
147
|
+
**Learn More**: See `modules/workflows/beads/` for comprehensive workflow documentation.
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
**Note**: This is a meta-repository for extending Augment Code AI. The actual project-specific `.augment/` folder remains in individual projects.
|
|
152
|
+
|
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Augment Extensions Contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
package/MODULES.md
ADDED
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# Available Extension Modules
|
|
2
|
+
|
|
3
|
+
This document catalogs all available extension modules for Augment Code AI.
|
|
4
|
+
|
|
5
|
+
## Coding Standards
|
|
6
|
+
|
|
7
|
+
### TypeScript Standards
|
|
8
|
+
- **Module**: `coding-standards/typescript`
|
|
9
|
+
- **Version**: 1.0.0
|
|
10
|
+
- **Character Count**: ~15,420
|
|
11
|
+
- **Description**: Comprehensive TypeScript coding standards and best practices
|
|
12
|
+
- **Contents**:
|
|
13
|
+
- Naming conventions
|
|
14
|
+
- Type safety guidelines
|
|
15
|
+
- Error handling patterns
|
|
16
|
+
- Async/await best practices
|
|
17
|
+
|
|
18
|
+
**Usage**:
|
|
19
|
+
```bash
|
|
20
|
+
augx link coding-standards/typescript
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### Python Standards (Coming Soon)
|
|
24
|
+
- **Module**: `coding-standards/python`
|
|
25
|
+
- **Status**: Planned
|
|
26
|
+
|
|
27
|
+
### React Patterns (Coming Soon)
|
|
28
|
+
- **Module**: `coding-standards/react`
|
|
29
|
+
- **Status**: Planned
|
|
30
|
+
|
|
31
|
+
## Workflows
|
|
32
|
+
|
|
33
|
+
### OpenSpec Workflow
|
|
34
|
+
- **Module**: `workflows/openspec`
|
|
35
|
+
- **Version**: 1.0.0
|
|
36
|
+
- **Character Count**: ~30,505
|
|
37
|
+
- **Description**: Spec-driven development (SDD) workflow for AI coding assistants
|
|
38
|
+
- **Contents**:
|
|
39
|
+
- Complete workflow guide (proposal → specs → tasks → implement → archive)
|
|
40
|
+
- Specification format and delta syntax
|
|
41
|
+
- Manual setup without CLI
|
|
42
|
+
- CLI command reference
|
|
43
|
+
- Best practices and patterns
|
|
44
|
+
- Complete change examples
|
|
45
|
+
|
|
46
|
+
**Usage**:
|
|
47
|
+
```bash
|
|
48
|
+
augx link workflows/openspec
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Installation**: Optional CLI available via `npm install -g @fission-ai/openspec@latest`
|
|
52
|
+
|
|
53
|
+
**Learn More**: https://openspec.dev/
|
|
54
|
+
|
|
55
|
+
### Beads Workflow
|
|
56
|
+
- **Module**: `workflows/beads`
|
|
57
|
+
- **Version**: 1.0.0
|
|
58
|
+
- **Character Count**: ~36,816
|
|
59
|
+
- **Description**: Distributed, git-backed graph issue tracker for AI agents
|
|
60
|
+
- **Contents**:
|
|
61
|
+
- Complete workflow guide (create → dependencies → ready → work → close)
|
|
62
|
+
- JSONL file format specification
|
|
63
|
+
- Manual setup without CLI
|
|
64
|
+
- CLI command reference
|
|
65
|
+
- Best practices and patterns
|
|
66
|
+
- Complete workflow examples
|
|
67
|
+
|
|
68
|
+
**Usage**:
|
|
69
|
+
```bash
|
|
70
|
+
augx link workflows/beads
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**Installation**: Optional CLI available via `npm install -g @beads/bd`
|
|
74
|
+
|
|
75
|
+
**Learn More**: https://github.com/steveyegge/beads
|
|
76
|
+
|
|
77
|
+
## Domain Rules
|
|
78
|
+
|
|
79
|
+
### Web Development (Coming Soon)
|
|
80
|
+
- **Module**: `domain-rules/web-development`
|
|
81
|
+
- **Status**: Planned
|
|
82
|
+
- **Description**: Best practices for web application development
|
|
83
|
+
|
|
84
|
+
### API Design (Coming Soon)
|
|
85
|
+
- **Module**: `domain-rules/api-design`
|
|
86
|
+
- **Status**: Planned
|
|
87
|
+
- **Description**: RESTful and GraphQL API design guidelines
|
|
88
|
+
|
|
89
|
+
### Security (Coming Soon)
|
|
90
|
+
- **Module**: `domain-rules/security`
|
|
91
|
+
- **Status**: Planned
|
|
92
|
+
- **Description**: Security best practices and common vulnerabilities
|
|
93
|
+
|
|
94
|
+
## Examples
|
|
95
|
+
|
|
96
|
+
### Design Patterns (Coming Soon)
|
|
97
|
+
- **Module**: `examples/design-patterns`
|
|
98
|
+
- **Status**: Planned
|
|
99
|
+
- **Description**: Common design patterns with code examples
|
|
100
|
+
|
|
101
|
+
### Testing Strategies (Coming Soon)
|
|
102
|
+
- **Module**: `examples/testing-strategies`
|
|
103
|
+
- **Status**: Planned
|
|
104
|
+
- **Description**: Unit, integration, and E2E testing examples
|
|
105
|
+
|
|
106
|
+
## Contributing New Modules
|
|
107
|
+
|
|
108
|
+
See [docs/MODULE_DEVELOPMENT.md](./docs/MODULE_DEVELOPMENT.md) for guidelines on creating new modules.
|
|
109
|
+
|
|
110
|
+
## Module Versioning
|
|
111
|
+
|
|
112
|
+
All modules follow [Semantic Versioning](https://semver.org/):
|
|
113
|
+
- **MAJOR**: Breaking changes to module structure or rules
|
|
114
|
+
- **MINOR**: New rules or examples added
|
|
115
|
+
- **PATCH**: Bug fixes, typos, clarifications
|
|
116
|
+
|
|
117
|
+
## Character Count Guidelines
|
|
118
|
+
|
|
119
|
+
- **Small modules**: < 10,000 characters
|
|
120
|
+
- **Medium modules**: 10,000 - 25,000 characters
|
|
121
|
+
- **Large modules**: > 25,000 characters
|
|
122
|
+
|
|
123
|
+
Modules should be split if they exceed 50,000 characters.
|
|
124
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
# Augment Extensions
|
|
2
|
+
|
|
3
|
+
**Reusable augmentation modules for Augment Code AI - Beyond the 49,400 character limit.**
|
|
4
|
+
|
|
5
|
+
Augment Extensions is a modular repository system that extends Augment Code AI's capabilities by providing domain-specific rules, coding standards, and extensive examples that can be consumed across multiple projects.
|
|
6
|
+
|
|
7
|
+
## 🎯 Purpose
|
|
8
|
+
|
|
9
|
+
Augment Code AI limits the `.augment/` folder to ~49,400 characters. This repository provides:
|
|
10
|
+
|
|
11
|
+
- **Domain-specific rules** that exceed the character limit
|
|
12
|
+
- **Coding standards** for various languages and frameworks
|
|
13
|
+
- **Extensive examples** and best practices
|
|
14
|
+
- **Versioned updates** that propagate to consuming projects
|
|
15
|
+
- **Project-agnostic modules** that work across different codebases
|
|
16
|
+
|
|
17
|
+
## 🚀 Quick Start
|
|
18
|
+
|
|
19
|
+
### For Humans (One-time Setup)
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# Install the CLI
|
|
23
|
+
npm install -g @augment-extensions/cli
|
|
24
|
+
|
|
25
|
+
# Initialize in your project
|
|
26
|
+
augx init
|
|
27
|
+
|
|
28
|
+
# Link extension modules
|
|
29
|
+
augx link coding-standards/typescript
|
|
30
|
+
augx link domain-rules/web-development
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### For AI Agents
|
|
34
|
+
|
|
35
|
+
Once initialized, AI agents automatically discover available extensions through:
|
|
36
|
+
- `AGENTS.md` integration (similar to OpenSpec/Beads)
|
|
37
|
+
- `.augment/extensions.json` manifest
|
|
38
|
+
- CLI commands: `augx list`, `augx show <module>`
|
|
39
|
+
|
|
40
|
+
## 📦 Repository Structure
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
augment-extensions/
|
|
44
|
+
├── modules/ # Extension modules
|
|
45
|
+
│ ├── coding-standards/ # Language/framework standards
|
|
46
|
+
│ │ ├── typescript/
|
|
47
|
+
│ │ ├── python/
|
|
48
|
+
│ │ ├── react/
|
|
49
|
+
│ │ └── ...
|
|
50
|
+
│ ├── domain-rules/ # Domain-specific rules
|
|
51
|
+
│ │ ├── web-development/
|
|
52
|
+
│ │ ├── api-design/
|
|
53
|
+
│ │ ├── security/
|
|
54
|
+
│ │ └── ...
|
|
55
|
+
│ └── examples/ # Extensive code examples
|
|
56
|
+
│ ├── design-patterns/
|
|
57
|
+
│ ├── testing-strategies/
|
|
58
|
+
│ └── ...
|
|
59
|
+
├── cli/ # CLI tool source
|
|
60
|
+
├── templates/ # Module templates
|
|
61
|
+
└── docs/ # Documentation
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## 🔧 How It Works
|
|
65
|
+
|
|
66
|
+
### 1. Module Structure
|
|
67
|
+
|
|
68
|
+
Each module is self-contained:
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
modules/coding-standards/typescript/
|
|
72
|
+
├── module.json # Metadata (version, dependencies)
|
|
73
|
+
├── rules/ # Rule files
|
|
74
|
+
│ ├── naming-conventions.md
|
|
75
|
+
│ ├── type-safety.md
|
|
76
|
+
│ └── error-handling.md
|
|
77
|
+
├── examples/ # Code examples
|
|
78
|
+
│ └── best-practices.ts
|
|
79
|
+
└── README.md # Module documentation
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### 2. Consumption Model
|
|
83
|
+
|
|
84
|
+
**Git Submodule Approach:**
|
|
85
|
+
```bash
|
|
86
|
+
# Add as submodule
|
|
87
|
+
git submodule add https://github.com/your-org/augment-extensions .augment-extensions
|
|
88
|
+
|
|
89
|
+
# Initialize
|
|
90
|
+
augx init --from-submodule
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Direct Link Approach:**
|
|
94
|
+
```bash
|
|
95
|
+
# Link specific modules
|
|
96
|
+
augx link typescript-standards
|
|
97
|
+
augx link api-design-rules
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
### 3. Version Management
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
# Update all linked modules
|
|
104
|
+
augx update
|
|
105
|
+
|
|
106
|
+
# Update specific module
|
|
107
|
+
augx update typescript-standards
|
|
108
|
+
|
|
109
|
+
# Pin to specific version
|
|
110
|
+
augx pin typescript-standards@1.2.0
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
## 📖 Available Modules
|
|
114
|
+
|
|
115
|
+
See [MODULES.md](./MODULES.md) for a complete catalog of available extension modules.
|
|
116
|
+
|
|
117
|
+
## 🛠 Creating Custom Modules
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
# Create new module
|
|
121
|
+
augx create my-custom-rules --type domain-rules
|
|
122
|
+
|
|
123
|
+
# Publish to registry (optional)
|
|
124
|
+
augx publish my-custom-rules
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## 🔗 Integration with Augment Code AI
|
|
128
|
+
|
|
129
|
+
Extensions integrate seamlessly:
|
|
130
|
+
|
|
131
|
+
1. **Character Limit Bypass**: Core rules stay in `.augment/`, extended content in modules
|
|
132
|
+
2. **Automatic Discovery**: AI agents can query available modules via CLI
|
|
133
|
+
3. **Versioned Updates**: `augx update` propagates changes to all consuming projects
|
|
134
|
+
4. **Selective Loading**: Only load modules relevant to current task
|
|
135
|
+
|
|
136
|
+
## 📚 Documentation
|
|
137
|
+
|
|
138
|
+
- [Quick Start Guide](./docs/QUICK_START.md) - Get started in 5 minutes
|
|
139
|
+
- [Integration Guide](./docs/INTEGRATION.md) - Detailed integration instructions
|
|
140
|
+
- [CLI Reference](./docs/CLI_REFERENCE.md) - Complete command reference
|
|
141
|
+
- [FAQ](./docs/FAQ.md) - Common questions and answers
|
|
142
|
+
|
|
143
|
+
## 🤝 Contributing
|
|
144
|
+
|
|
145
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines on creating and sharing modules.
|
|
146
|
+
|
|
147
|
+
## 📄 License
|
|
148
|
+
|
|
149
|
+
MIT License - See [LICENSE](./LICENSE) for details.
|
|
150
|
+
|
|
151
|
+
## 🌟 Examples
|
|
152
|
+
|
|
153
|
+
### Example 1: TypeScript Project
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
augx link coding-standards/typescript
|
|
157
|
+
augx link domain-rules/web-development
|
|
158
|
+
augx link examples/react-patterns
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
### Example 2: Python API Project
|
|
162
|
+
|
|
163
|
+
```bash
|
|
164
|
+
augx link coding-standards/python
|
|
165
|
+
augx link domain-rules/api-design
|
|
166
|
+
augx link examples/fastapi-patterns
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
## 🔄 Update Propagation
|
|
170
|
+
|
|
171
|
+
When module maintainers release updates:
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
# Check for updates
|
|
175
|
+
augx check-updates
|
|
176
|
+
|
|
177
|
+
# Update all modules
|
|
178
|
+
augx update --all
|
|
179
|
+
|
|
180
|
+
# Review changes before applying
|
|
181
|
+
augx diff typescript-standards
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## 🎯 Design Principles
|
|
185
|
+
|
|
186
|
+
1. **Modular**: Each module is independent and composable
|
|
187
|
+
2. **Versioned**: Semantic versioning for predictable updates
|
|
188
|
+
3. **Git-native**: Leverage git for distribution and versioning
|
|
189
|
+
4. **AI-friendly**: JSON output, structured data, CLI-first
|
|
190
|
+
5. **Project-agnostic**: Works across different project types
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
**Status**: Active Development | **Version**: 0.1.0 | **Maintainer**: @your-username
|
|
195
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
|
package/cli/dist/cli.js
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
const commander_1 = require("commander");
|
|
8
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
9
|
+
const init_1 = require("./commands/init");
|
|
10
|
+
const list_1 = require("./commands/list");
|
|
11
|
+
const show_1 = require("./commands/show");
|
|
12
|
+
const link_1 = require("./commands/link");
|
|
13
|
+
const update_1 = require("./commands/update");
|
|
14
|
+
const search_1 = require("./commands/search");
|
|
15
|
+
const program = new commander_1.Command();
|
|
16
|
+
program
|
|
17
|
+
.name('augx')
|
|
18
|
+
.description('CLI tool for managing Augment Code AI extension modules')
|
|
19
|
+
.version('0.1.0');
|
|
20
|
+
program
|
|
21
|
+
.command('init')
|
|
22
|
+
.description('Initialize Augment Extensions in current project')
|
|
23
|
+
.option('--from-submodule', 'Initialize from existing submodule')
|
|
24
|
+
.action(init_1.initCommand);
|
|
25
|
+
program
|
|
26
|
+
.command('list')
|
|
27
|
+
.description('List available or linked extension modules')
|
|
28
|
+
.option('--linked', 'Show only linked modules')
|
|
29
|
+
.option('--json', 'Output as JSON')
|
|
30
|
+
.action(list_1.listCommand);
|
|
31
|
+
program
|
|
32
|
+
.command('show <module>')
|
|
33
|
+
.description('Display detailed information about a module')
|
|
34
|
+
.option('--json', 'Output as JSON')
|
|
35
|
+
.action(show_1.showCommand);
|
|
36
|
+
program
|
|
37
|
+
.command('link <module>')
|
|
38
|
+
.description('Link an extension module to current project')
|
|
39
|
+
.option('--version <version>', 'Specific version to link')
|
|
40
|
+
.action(link_1.linkCommand);
|
|
41
|
+
program
|
|
42
|
+
.command('unlink <module>')
|
|
43
|
+
.description('Unlink an extension module from current project')
|
|
44
|
+
.action((module) => {
|
|
45
|
+
console.log(chalk_1.default.yellow(`Unlinking module: ${module}`));
|
|
46
|
+
// Implementation
|
|
47
|
+
});
|
|
48
|
+
program
|
|
49
|
+
.command('update')
|
|
50
|
+
.description('Update all linked modules to latest versions')
|
|
51
|
+
.option('--module <name>', 'Update specific module only')
|
|
52
|
+
.action(update_1.updateCommand);
|
|
53
|
+
program
|
|
54
|
+
.command('search <keyword>')
|
|
55
|
+
.description('Search for extension modules')
|
|
56
|
+
.option('--type <type>', 'Filter by module type')
|
|
57
|
+
.action(search_1.searchCommand);
|
|
58
|
+
program
|
|
59
|
+
.command('create <name>')
|
|
60
|
+
.description('Create a new extension module')
|
|
61
|
+
.option('--type <type>', 'Module type (coding-standards, domain-rules, examples)')
|
|
62
|
+
.action((name, options) => {
|
|
63
|
+
console.log(chalk_1.default.green(`Creating new module: ${name}`));
|
|
64
|
+
console.log(chalk_1.default.gray(`Type: ${options.type || 'coding-standards'}`));
|
|
65
|
+
// Implementation
|
|
66
|
+
});
|
|
67
|
+
program
|
|
68
|
+
.command('validate <module>')
|
|
69
|
+
.description('Validate module structure and metadata')
|
|
70
|
+
.action((module) => {
|
|
71
|
+
console.log(chalk_1.default.blue(`Validating module: ${module}`));
|
|
72
|
+
// Implementation
|
|
73
|
+
});
|
|
74
|
+
program
|
|
75
|
+
.command('pin <module> <version>')
|
|
76
|
+
.description('Pin module to specific version')
|
|
77
|
+
.action((module, version) => {
|
|
78
|
+
console.log(chalk_1.default.cyan(`Pinning ${module} to version ${version}`));
|
|
79
|
+
// Implementation
|
|
80
|
+
});
|
|
81
|
+
program
|
|
82
|
+
.command('check-updates')
|
|
83
|
+
.description('Check for available module updates')
|
|
84
|
+
.action(() => {
|
|
85
|
+
console.log(chalk_1.default.blue('Checking for updates...'));
|
|
86
|
+
// Implementation
|
|
87
|
+
});
|
|
88
|
+
program
|
|
89
|
+
.command('diff <module>')
|
|
90
|
+
.description('Show differences between current and latest version')
|
|
91
|
+
.action((module) => {
|
|
92
|
+
console.log(chalk_1.default.magenta(`Showing diff for: ${module}`));
|
|
93
|
+
// Implementation
|
|
94
|
+
});
|
|
95
|
+
program.parse(process.argv);
|
|
96
|
+
// Show help if no command provided
|
|
97
|
+
if (!process.argv.slice(2).length) {
|
|
98
|
+
program.outputHelp();
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAKA,UAAU,WAAW;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAqGrE"}
|