@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
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.initCommand = initCommand;
|
|
40
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
const inquirer_1 = __importDefault(require("inquirer"));
|
|
44
|
+
async function initCommand(options) {
|
|
45
|
+
console.log(chalk_1.default.bold.blue('\n🚀 Initializing Augment Extensions\n'));
|
|
46
|
+
try {
|
|
47
|
+
// Check if already initialized
|
|
48
|
+
const augmentDir = path.join(process.cwd(), '.augment');
|
|
49
|
+
const extensionsConfig = path.join(augmentDir, 'extensions.json');
|
|
50
|
+
if (fs.existsSync(extensionsConfig)) {
|
|
51
|
+
const { overwrite } = await inquirer_1.default.prompt([
|
|
52
|
+
{
|
|
53
|
+
type: 'confirm',
|
|
54
|
+
name: 'overwrite',
|
|
55
|
+
message: 'Augment Extensions already initialized. Overwrite?',
|
|
56
|
+
default: false
|
|
57
|
+
}
|
|
58
|
+
]);
|
|
59
|
+
if (!overwrite) {
|
|
60
|
+
console.log(chalk_1.default.yellow('Initialization cancelled.'));
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
// Create .augment directory if it doesn't exist
|
|
65
|
+
if (!fs.existsSync(augmentDir)) {
|
|
66
|
+
fs.mkdirSync(augmentDir, { recursive: true });
|
|
67
|
+
console.log(chalk_1.default.green('✓ Created .augment directory'));
|
|
68
|
+
}
|
|
69
|
+
// Create extensions.json
|
|
70
|
+
const config = {
|
|
71
|
+
version: '0.1.0',
|
|
72
|
+
modules: [],
|
|
73
|
+
settings: {
|
|
74
|
+
autoUpdate: false,
|
|
75
|
+
checkUpdatesOnInit: true
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
fs.writeFileSync(extensionsConfig, JSON.stringify(config, null, 2));
|
|
79
|
+
console.log(chalk_1.default.green('✓ Created extensions.json'));
|
|
80
|
+
// Update or create AGENTS.md
|
|
81
|
+
const agentsPath = path.join(process.cwd(), 'AGENTS.md');
|
|
82
|
+
const agentsContent = `
|
|
83
|
+
# Augment Extensions Integration
|
|
84
|
+
|
|
85
|
+
This project uses Augment Extensions for additional AI coding guidelines.
|
|
86
|
+
|
|
87
|
+
## For AI Agents
|
|
88
|
+
|
|
89
|
+
Use the \`augx\` CLI to discover and apply extension modules:
|
|
90
|
+
|
|
91
|
+
\`\`\`bash
|
|
92
|
+
# List linked modules
|
|
93
|
+
augx list --linked
|
|
94
|
+
|
|
95
|
+
# Show module details
|
|
96
|
+
augx show <module-name>
|
|
97
|
+
|
|
98
|
+
# Search for modules
|
|
99
|
+
augx search <keyword>
|
|
100
|
+
\`\`\`
|
|
101
|
+
|
|
102
|
+
## Linked Modules
|
|
103
|
+
|
|
104
|
+
Check \`.augment/extensions.json\` for currently linked modules.
|
|
105
|
+
`;
|
|
106
|
+
if (fs.existsSync(agentsPath)) {
|
|
107
|
+
const existing = fs.readFileSync(agentsPath, 'utf-8');
|
|
108
|
+
if (!existing.includes('Augment Extensions')) {
|
|
109
|
+
fs.appendFileSync(agentsPath, '\n' + agentsContent);
|
|
110
|
+
console.log(chalk_1.default.green('✓ Updated AGENTS.md'));
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
fs.writeFileSync(agentsPath, agentsContent.trim());
|
|
115
|
+
console.log(chalk_1.default.green('✓ Created AGENTS.md'));
|
|
116
|
+
}
|
|
117
|
+
// Create .gitignore entry if needed
|
|
118
|
+
const gitignorePath = path.join(process.cwd(), '.gitignore');
|
|
119
|
+
if (fs.existsSync(gitignorePath)) {
|
|
120
|
+
const gitignore = fs.readFileSync(gitignorePath, 'utf-8');
|
|
121
|
+
if (!gitignore.includes('.augment/extensions.json')) {
|
|
122
|
+
fs.appendFileSync(gitignorePath, '\n# Augment Extensions\n.augment/extensions.json\n');
|
|
123
|
+
console.log(chalk_1.default.green('✓ Updated .gitignore'));
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
console.log(chalk_1.default.bold.green('\n✨ Augment Extensions initialized successfully!\n'));
|
|
127
|
+
console.log(chalk_1.default.gray('Next steps:'));
|
|
128
|
+
console.log(chalk_1.default.gray(' 1. Link modules: augx link coding-standards/typescript'));
|
|
129
|
+
console.log(chalk_1.default.gray(' 2. View modules: augx list'));
|
|
130
|
+
console.log(chalk_1.default.gray(' 3. Show details: augx show <module-name>\n'));
|
|
131
|
+
}
|
|
132
|
+
catch (error) {
|
|
133
|
+
console.error(chalk_1.default.red('Error during initialization:'), error);
|
|
134
|
+
process.exit(1);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.d.ts","sourceRoot":"","sources":["../../src/commands/link.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDzF"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.linkCommand = linkCommand;
|
|
40
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
async function linkCommand(moduleName, options) {
|
|
44
|
+
try {
|
|
45
|
+
console.log(chalk_1.default.blue(`Linking module: ${moduleName}`));
|
|
46
|
+
// Load extensions config
|
|
47
|
+
const configPath = path.join(process.cwd(), '.augment', 'extensions.json');
|
|
48
|
+
if (!fs.existsSync(configPath)) {
|
|
49
|
+
console.error(chalk_1.default.red('Augment Extensions not initialized. Run: augx init'));
|
|
50
|
+
process.exit(1);
|
|
51
|
+
}
|
|
52
|
+
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
53
|
+
// Check if module exists
|
|
54
|
+
const modulesDir = path.join(__dirname, '../../../modules');
|
|
55
|
+
const modulePath = path.join(modulesDir, moduleName);
|
|
56
|
+
const moduleJsonPath = path.join(modulePath, 'module.json');
|
|
57
|
+
if (!fs.existsSync(moduleJsonPath)) {
|
|
58
|
+
console.error(chalk_1.default.red(`Module not found: ${moduleName}`));
|
|
59
|
+
process.exit(1);
|
|
60
|
+
}
|
|
61
|
+
const moduleData = JSON.parse(fs.readFileSync(moduleJsonPath, 'utf-8'));
|
|
62
|
+
// Check if already linked
|
|
63
|
+
const existingIndex = config.modules.findIndex((m) => m.name === moduleName);
|
|
64
|
+
if (existingIndex >= 0) {
|
|
65
|
+
console.log(chalk_1.default.yellow(`Module already linked: ${moduleName}`));
|
|
66
|
+
console.log(chalk_1.default.gray('Use "augx update" to update to latest version'));
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
// Add to config
|
|
70
|
+
config.modules.push({
|
|
71
|
+
name: moduleName,
|
|
72
|
+
version: options.version || moduleData.version,
|
|
73
|
+
type: moduleData.type,
|
|
74
|
+
description: moduleData.description
|
|
75
|
+
});
|
|
76
|
+
fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
|
|
77
|
+
console.log(chalk_1.default.green(`✓ Linked ${moduleName} (v${options.version || moduleData.version})`));
|
|
78
|
+
console.log(chalk_1.default.gray(`\nUse "augx show ${moduleName}" to view module details`));
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
console.error(chalk_1.default.red('Error linking module:'), error);
|
|
82
|
+
process.exit(1);
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=link.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link.js","sourceRoot":"","sources":["../../src/commands/link.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAUD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BrE"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.listCommand = listCommand;
|
|
40
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
async function listCommand(options) {
|
|
44
|
+
try {
|
|
45
|
+
const modules = await getModules(options.linked);
|
|
46
|
+
if (options.json) {
|
|
47
|
+
console.log(JSON.stringify(modules, null, 2));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (modules.length === 0) {
|
|
51
|
+
console.log(chalk_1.default.yellow(options.linked ? 'No linked modules found.' : 'No modules available.'));
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
console.log(chalk_1.default.bold.blue(`\n${options.linked ? 'Linked' : 'Available'} Modules:\n`));
|
|
55
|
+
modules.forEach((module) => {
|
|
56
|
+
const status = module.linked ? chalk_1.default.green('✓') : chalk_1.default.gray('○');
|
|
57
|
+
console.log(`${status} ${chalk_1.default.bold(module.name)} ${chalk_1.default.gray(`(v${module.version})`)}`);
|
|
58
|
+
console.log(` ${chalk_1.default.gray(module.description)}`);
|
|
59
|
+
console.log(` ${chalk_1.default.cyan(`Type: ${module.type}`)}\n`);
|
|
60
|
+
});
|
|
61
|
+
console.log(chalk_1.default.gray(`Total: ${modules.length} module(s)\n`));
|
|
62
|
+
}
|
|
63
|
+
catch (error) {
|
|
64
|
+
console.error(chalk_1.default.red('Error listing modules:'), error);
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async function getModules(linkedOnly = false) {
|
|
69
|
+
const modules = [];
|
|
70
|
+
// Check for linked modules in current project
|
|
71
|
+
const linkedModules = getLinkedModules();
|
|
72
|
+
if (linkedOnly) {
|
|
73
|
+
return linkedModules;
|
|
74
|
+
}
|
|
75
|
+
// Get all available modules from repository
|
|
76
|
+
const modulesDir = path.join(__dirname, '../../../modules');
|
|
77
|
+
if (!fs.existsSync(modulesDir)) {
|
|
78
|
+
return linkedModules;
|
|
79
|
+
}
|
|
80
|
+
const categories = fs.readdirSync(modulesDir, { withFileTypes: true })
|
|
81
|
+
.filter(dirent => dirent.isDirectory())
|
|
82
|
+
.map(dirent => dirent.name);
|
|
83
|
+
for (const category of categories) {
|
|
84
|
+
const categoryPath = path.join(modulesDir, category);
|
|
85
|
+
const moduleNames = fs.readdirSync(categoryPath, { withFileTypes: true })
|
|
86
|
+
.filter(dirent => dirent.isDirectory())
|
|
87
|
+
.map(dirent => dirent.name);
|
|
88
|
+
for (const moduleName of moduleNames) {
|
|
89
|
+
const modulePath = path.join(categoryPath, moduleName);
|
|
90
|
+
const moduleJsonPath = path.join(modulePath, 'module.json');
|
|
91
|
+
if (fs.existsSync(moduleJsonPath)) {
|
|
92
|
+
const moduleData = JSON.parse(fs.readFileSync(moduleJsonPath, 'utf-8'));
|
|
93
|
+
const fullName = `${category}/${moduleName}`;
|
|
94
|
+
modules.push({
|
|
95
|
+
name: fullName,
|
|
96
|
+
version: moduleData.version,
|
|
97
|
+
description: moduleData.description,
|
|
98
|
+
type: moduleData.type,
|
|
99
|
+
linked: linkedModules.some(m => m.name === fullName)
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return modules;
|
|
105
|
+
}
|
|
106
|
+
function getLinkedModules() {
|
|
107
|
+
const configPath = path.join(process.cwd(), '.augment', 'extensions.json');
|
|
108
|
+
if (!fs.existsSync(configPath)) {
|
|
109
|
+
return [];
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
const config = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
113
|
+
return (config.modules || []).map((m) => ({
|
|
114
|
+
...m,
|
|
115
|
+
linked: true
|
|
116
|
+
}));
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
return [];
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
//# sourceMappingURL=list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../src/commands/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":"AAEA,UAAU,aAAa;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAS1F"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.searchCommand = searchCommand;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
async function searchCommand(keyword, options) {
|
|
9
|
+
console.log(chalk_1.default.blue(`Searching for: ${keyword}`));
|
|
10
|
+
if (options.type) {
|
|
11
|
+
console.log(chalk_1.default.gray(`Filter by type: ${options.type}`));
|
|
12
|
+
}
|
|
13
|
+
// Implementation placeholder
|
|
14
|
+
console.log(chalk_1.default.yellow('Search functionality coming soon!'));
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/commands/search.ts"],"names":[],"mappings":";;;;;AAMA,sCASC;AAfD,kDAA0B;AAMnB,KAAK,UAAU,aAAa,CAAC,OAAe,EAAE,OAAsB;IACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC,CAAC;IAErD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,6BAA6B;IAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0CzF"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.showCommand = showCommand;
|
|
40
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
async function showCommand(moduleName, options) {
|
|
44
|
+
try {
|
|
45
|
+
const moduleInfo = await getModuleInfo(moduleName);
|
|
46
|
+
if (!moduleInfo) {
|
|
47
|
+
console.error(chalk_1.default.red(`Module not found: ${moduleName}`));
|
|
48
|
+
process.exit(1);
|
|
49
|
+
}
|
|
50
|
+
if (options.json) {
|
|
51
|
+
console.log(JSON.stringify(moduleInfo, null, 2));
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
console.log(chalk_1.default.bold.blue(`\n📦 ${moduleInfo.name}\n`));
|
|
55
|
+
console.log(chalk_1.default.gray(`Version: ${moduleInfo.version}`));
|
|
56
|
+
console.log(chalk_1.default.gray(`Type: ${moduleInfo.type}`));
|
|
57
|
+
console.log(chalk_1.default.gray(`Description: ${moduleInfo.description}\n`));
|
|
58
|
+
if (moduleInfo.rules && moduleInfo.rules.length > 0) {
|
|
59
|
+
console.log(chalk_1.default.bold('Rules:'));
|
|
60
|
+
moduleInfo.rules.forEach((rule) => {
|
|
61
|
+
console.log(chalk_1.default.cyan(` • ${rule}`));
|
|
62
|
+
});
|
|
63
|
+
console.log();
|
|
64
|
+
}
|
|
65
|
+
if (moduleInfo.examples && moduleInfo.examples.length > 0) {
|
|
66
|
+
console.log(chalk_1.default.bold('Examples:'));
|
|
67
|
+
moduleInfo.examples.forEach((example) => {
|
|
68
|
+
console.log(chalk_1.default.green(` • ${example}`));
|
|
69
|
+
});
|
|
70
|
+
console.log();
|
|
71
|
+
}
|
|
72
|
+
console.log(chalk_1.default.gray(`Character count: ~${moduleInfo.characterCount || 'unknown'}`));
|
|
73
|
+
console.log();
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
console.error(chalk_1.default.red('Error showing module:'), error);
|
|
77
|
+
process.exit(1);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
async function getModuleInfo(moduleName) {
|
|
81
|
+
const modulesDir = path.join(__dirname, '../../../modules');
|
|
82
|
+
const modulePath = path.join(modulesDir, moduleName);
|
|
83
|
+
const moduleJsonPath = path.join(modulePath, 'module.json');
|
|
84
|
+
if (!fs.existsSync(moduleJsonPath)) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
const moduleData = JSON.parse(fs.readFileSync(moduleJsonPath, 'utf-8'));
|
|
88
|
+
// Get rules
|
|
89
|
+
const rulesDir = path.join(modulePath, 'rules');
|
|
90
|
+
const rules = fs.existsSync(rulesDir)
|
|
91
|
+
? fs.readdirSync(rulesDir).filter(f => f.endsWith('.md'))
|
|
92
|
+
: [];
|
|
93
|
+
// Get examples
|
|
94
|
+
const examplesDir = path.join(modulePath, 'examples');
|
|
95
|
+
const examples = fs.existsSync(examplesDir)
|
|
96
|
+
? fs.readdirSync(examplesDir)
|
|
97
|
+
: [];
|
|
98
|
+
return {
|
|
99
|
+
...moduleData,
|
|
100
|
+
name: moduleName,
|
|
101
|
+
rules,
|
|
102
|
+
examples,
|
|
103
|
+
characterCount: moduleData.augment?.characterCount
|
|
104
|
+
};
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=show.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"show.js","sourceRoot":"","sources":["../../src/commands/show.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAEA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAWzE"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.updateCommand = updateCommand;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
async function updateCommand(options) {
|
|
9
|
+
console.log(chalk_1.default.blue('Updating modules...'));
|
|
10
|
+
if (options.module) {
|
|
11
|
+
console.log(chalk_1.default.gray(`Updating: ${options.module}`));
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
console.log(chalk_1.default.gray('Updating all linked modules'));
|
|
15
|
+
}
|
|
16
|
+
// Implementation placeholder
|
|
17
|
+
console.log(chalk_1.default.yellow('Update functionality coming soon!'));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":";;;;;AAMA,sCAWC;AAjBD,kDAA0B;AAMnB,KAAK,UAAU,aAAa,CAAC,OAAsB;IACxD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE/C,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,6BAA6B;IAC7B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# TypeScript Coding Standards
|
|
2
|
+
|
|
3
|
+
Comprehensive TypeScript coding standards and best practices for Augment Code AI.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
This module provides detailed TypeScript coding standards that exceed the `.augment/` character limit, including:
|
|
8
|
+
|
|
9
|
+
- Naming conventions
|
|
10
|
+
- Type safety guidelines
|
|
11
|
+
- Error handling patterns
|
|
12
|
+
- Async/await best practices
|
|
13
|
+
- Advanced TypeScript features
|
|
14
|
+
|
|
15
|
+
## Usage
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# Link this module to your project
|
|
19
|
+
augx link coding-standards/typescript
|
|
20
|
+
|
|
21
|
+
# AI agents can then query:
|
|
22
|
+
augx show typescript-standards
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Contents
|
|
26
|
+
|
|
27
|
+
### Rules
|
|
28
|
+
|
|
29
|
+
1. **naming-conventions.md** - Comprehensive naming guidelines
|
|
30
|
+
2. **type-safety.md** - Type safety and inference best practices
|
|
31
|
+
3. **error-handling.md** - Error handling patterns
|
|
32
|
+
4. **async-patterns.md** - Async/await and Promise patterns
|
|
33
|
+
|
|
34
|
+
### Examples
|
|
35
|
+
|
|
36
|
+
- **best-practices.ts** - Real-world code examples
|
|
37
|
+
|
|
38
|
+
## Character Count
|
|
39
|
+
|
|
40
|
+
Total: ~15,420 characters (would exceed `.augment/` limit if included directly)
|
|
41
|
+
|
|
42
|
+
## Version History
|
|
43
|
+
|
|
44
|
+
- **1.0.0** - Initial release with core standards
|
|
45
|
+
|