aiox-core 5.0.0 → 5.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/.aiox-core/data/entity-registry.yaml +5297 -1814
- package/.aiox-core/data/registry-update-log.jsonl +2 -0
- package/.aiox-core/development/templates/service-template/README.md.hbs +158 -158
- package/.aiox-core/development/templates/service-template/__tests__/index.test.ts.hbs +237 -237
- package/.aiox-core/development/templates/service-template/client.ts.hbs +403 -403
- package/.aiox-core/development/templates/service-template/errors.ts.hbs +182 -182
- package/.aiox-core/development/templates/service-template/index.ts.hbs +120 -120
- package/.aiox-core/development/templates/service-template/package.json.hbs +87 -87
- package/.aiox-core/development/templates/service-template/types.ts.hbs +145 -145
- package/.aiox-core/development/templates/squad-template/LICENSE +21 -21
- package/.aiox-core/infrastructure/scripts/tool-resolver.js +4 -4
- package/.aiox-core/infrastructure/templates/aiox-sync.yaml.template +182 -182
- package/.aiox-core/infrastructure/templates/coderabbit.yaml.template +279 -279
- package/.aiox-core/infrastructure/templates/github-workflows/ci.yml.template +169 -169
- package/.aiox-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -330
- package/.aiox-core/infrastructure/templates/github-workflows/release.yml.template +196 -196
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-aiox-base.tmpl +63 -63
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -18
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -85
- package/.aiox-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -145
- package/.aiox-core/install-manifest.yaml +58 -58
- package/.aiox-core/local-config.yaml.template +71 -71
- package/.aiox-core/monitor/hooks/lib/__init__.py +1 -1
- package/.aiox-core/monitor/hooks/lib/enrich.py +58 -58
- package/.aiox-core/monitor/hooks/lib/send_event.py +47 -47
- package/.aiox-core/monitor/hooks/notification.py +29 -29
- package/.aiox-core/monitor/hooks/post_tool_use.py +45 -45
- package/.aiox-core/monitor/hooks/pre_compact.py +29 -29
- package/.aiox-core/monitor/hooks/pre_tool_use.py +40 -40
- package/.aiox-core/monitor/hooks/stop.py +29 -29
- package/.aiox-core/monitor/hooks/subagent_stop.py +29 -29
- package/.aiox-core/monitor/hooks/user_prompt_submit.py +38 -38
- package/.aiox-core/product/templates/adr.hbs +125 -125
- package/.aiox-core/product/templates/dbdr.hbs +241 -241
- package/.aiox-core/product/templates/engine/elicitation.js +2 -3
- package/.aiox-core/product/templates/epic.hbs +212 -212
- package/.aiox-core/product/templates/pmdr.hbs +186 -186
- package/.aiox-core/product/templates/prd-v2.0.hbs +216 -216
- package/.aiox-core/product/templates/prd.hbs +201 -201
- package/.aiox-core/product/templates/story.hbs +263 -263
- package/.aiox-core/product/templates/task.hbs +170 -170
- package/.aiox-core/product/templates/tmpl-comment-on-examples.sql +158 -158
- package/.aiox-core/product/templates/tmpl-migration-script.sql +91 -91
- package/.aiox-core/product/templates/tmpl-rls-granular-policies.sql +104 -104
- package/.aiox-core/product/templates/tmpl-rls-kiss-policy.sql +10 -10
- package/.aiox-core/product/templates/tmpl-rls-roles.sql +135 -135
- package/.aiox-core/product/templates/tmpl-rls-simple.sql +77 -77
- package/.aiox-core/product/templates/tmpl-rls-tenant.sql +152 -152
- package/.aiox-core/product/templates/tmpl-rollback-script.sql +77 -77
- package/.aiox-core/product/templates/tmpl-seed-data.sql +140 -140
- package/.aiox-core/product/templates/tmpl-smoke-test.sql +16 -16
- package/.aiox-core/product/templates/tmpl-staging-copy-merge.sql +139 -139
- package/.aiox-core/product/templates/tmpl-stored-proc.sql +140 -140
- package/.aiox-core/product/templates/tmpl-trigger.sql +152 -152
- package/.aiox-core/product/templates/tmpl-view-materialized.sql +133 -133
- package/.aiox-core/product/templates/tmpl-view.sql +177 -177
- package/.aiox-core/scripts/pm.sh +0 -0
- package/.claude/hooks/code-intel-pretool.cjs +107 -0
- package/.claude/hooks/enforce-architecture-first.py +196 -196
- package/.claude/hooks/mind-clone-governance.py +192 -192
- package/.claude/hooks/read-protection.py +151 -151
- package/.claude/hooks/slug-validation.py +176 -176
- package/.claude/hooks/sql-governance.py +182 -182
- package/.claude/hooks/write-path-validation.py +194 -194
- package/LICENSE +33 -33
- package/bin/aiox-graph.js +0 -0
- package/bin/aiox-minimal.js +0 -0
- package/bin/aiox.js +0 -0
- package/docs/guides/aios-workflows/README.md +247 -0
- package/docs/guides/aios-workflows/bob-orchestrator-workflow.md +1536 -0
- package/package.json +1 -1
- package/packages/aiox-install/bin/aiox-install.js +0 -0
- package/packages/aiox-install/bin/edmcp.js +0 -0
- package/packages/aiox-pro-cli/bin/aiox-pro.js +0 -0
- package/packages/installer/src/wizard/pro-setup.js +210 -123
- package/pro/README.md +66 -0
- package/pro/license/degradation.js +220 -0
- package/pro/license/errors.js +450 -0
- package/pro/license/feature-gate.js +354 -0
- package/pro/license/index.js +181 -0
- package/pro/license/license-api.js +679 -0
- package/pro/license/license-cache.js +523 -0
- package/pro/license/license-crypto.js +303 -0
- package/scripts/check-markdown-links.py +352 -352
- package/scripts/dashboard-parallel-dev.sh +0 -0
- package/scripts/dashboard-parallel-phase3.sh +0 -0
- package/scripts/dashboard-parallel-phase4.sh +0 -0
- package/scripts/glue/README.md +355 -0
- package/scripts/glue/compose-agent-prompt.cjs +362 -0
- package/scripts/install-monitor-hooks.sh +0 -0
- package/.aiox-core/lib/build.json +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
{"timestamp":"2026-03-05T21:53:26.443Z","action":"change","path":".aiox-core/infrastructure/scripts/tool-resolver.js","trigger":"watcher"}
|
|
2
|
+
{"timestamp":"2026-03-05T21:53:26.445Z","action":"change","path":".aiox-core/product/templates/engine/elicitation.js","trigger":"watcher"}
|
|
@@ -1,158 +1,158 @@
|
|
|
1
|
-
# {{pascalCase serviceName}} Service
|
|
2
|
-
|
|
3
|
-
> {{description}}
|
|
4
|
-
|
|
5
|
-
## Installation
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
npm install @aiox/{{kebabCase serviceName}}
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
## Quick Start
|
|
12
|
-
|
|
13
|
-
```typescript
|
|
14
|
-
import { create{{pascalCase serviceName}}Service } from '@aiox/{{kebabCase serviceName}}';
|
|
15
|
-
|
|
16
|
-
const service = create{{pascalCase serviceName}}Service({
|
|
17
|
-
{{#each envVars}}
|
|
18
|
-
{{camelCase this.name}}: process.env.{{this.name}},
|
|
19
|
-
{{/each}}
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
// Use the service
|
|
23
|
-
const result = await service.execute();
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
## Configuration
|
|
27
|
-
|
|
28
|
-
### Environment Variables
|
|
29
|
-
|
|
30
|
-
| Variable | Required | Description |
|
|
31
|
-
|----------|----------|-------------|
|
|
32
|
-
{{#each envVars}}
|
|
33
|
-
| `{{this.name}}` | {{#if this.required}}Yes{{else}}No{{/if}} | {{this.description}} |
|
|
34
|
-
{{/each}}
|
|
35
|
-
|
|
36
|
-
### Programmatic Configuration
|
|
37
|
-
|
|
38
|
-
```typescript
|
|
39
|
-
import { create{{pascalCase serviceName}}Service, {{pascalCase serviceName}}Config } from '@aiox/{{kebabCase serviceName}}';
|
|
40
|
-
|
|
41
|
-
const config: {{pascalCase serviceName}}Config = {
|
|
42
|
-
{{#each envVars}}
|
|
43
|
-
{{camelCase this.name}}: '{{this.example}}',
|
|
44
|
-
{{/each}}
|
|
45
|
-
};
|
|
46
|
-
|
|
47
|
-
const service = create{{pascalCase serviceName}}Service(config);
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
{{#if isApiIntegration}}
|
|
51
|
-
## API Integration
|
|
52
|
-
|
|
53
|
-
This service integrates with an external API. Features include:
|
|
54
|
-
|
|
55
|
-
- **Rate Limiting**: Automatic request throttling
|
|
56
|
-
- **Retry Logic**: Exponential backoff on failures
|
|
57
|
-
- **Error Handling**: Typed errors with actionable messages
|
|
58
|
-
|
|
59
|
-
### Rate Limits
|
|
60
|
-
|
|
61
|
-
> **Note:** The values below are placeholders. Update them according to your API's actual rate limits.
|
|
62
|
-
|
|
63
|
-
| Tier | Requests/min | Burst |
|
|
64
|
-
|------|--------------|-------|
|
|
65
|
-
| Free | 60 | 10 |
|
|
66
|
-
| Pro | 600 | 100 |
|
|
67
|
-
|
|
68
|
-
{{/if}}
|
|
69
|
-
## Usage Examples
|
|
70
|
-
|
|
71
|
-
### Basic Usage
|
|
72
|
-
|
|
73
|
-
```typescript
|
|
74
|
-
const service = create{{pascalCase serviceName}}Service(config);
|
|
75
|
-
|
|
76
|
-
try {
|
|
77
|
-
const result = await service.execute();
|
|
78
|
-
console.log('Success:', result);
|
|
79
|
-
} catch (error) {
|
|
80
|
-
if (error instanceof {{pascalCase serviceName}}Error) {
|
|
81
|
-
console.error('Service error:', error.code, error.message);
|
|
82
|
-
}
|
|
83
|
-
throw error;
|
|
84
|
-
}
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
{{#if hasAuth}}
|
|
88
|
-
### Authentication
|
|
89
|
-
|
|
90
|
-
This service requires authentication. Set your credentials via environment variables or config:
|
|
91
|
-
|
|
92
|
-
```typescript
|
|
93
|
-
const service = create{{pascalCase serviceName}}Service({
|
|
94
|
-
apiKey: process.env.{{upperCase serviceName}}_API_KEY,
|
|
95
|
-
// or
|
|
96
|
-
accessToken: process.env.{{upperCase serviceName}}_ACCESS_TOKEN,
|
|
97
|
-
});
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
{{/if}}
|
|
101
|
-
## Error Handling
|
|
102
|
-
|
|
103
|
-
The service provides typed errors for common failure scenarios:
|
|
104
|
-
|
|
105
|
-
```typescript
|
|
106
|
-
import { {{pascalCase serviceName}}Error, {{pascalCase serviceName}}ErrorCode } from '@aiox/{{kebabCase serviceName}}';
|
|
107
|
-
|
|
108
|
-
try {
|
|
109
|
-
await service.execute();
|
|
110
|
-
} catch (error) {
|
|
111
|
-
if (error instanceof {{pascalCase serviceName}}Error) {
|
|
112
|
-
switch (error.code) {
|
|
113
|
-
case {{pascalCase serviceName}}ErrorCode.CONFIGURATION_ERROR:
|
|
114
|
-
// Handle configuration issues
|
|
115
|
-
break;
|
|
116
|
-
case {{pascalCase serviceName}}ErrorCode.NETWORK_ERROR:
|
|
117
|
-
// Handle network issues
|
|
118
|
-
break;
|
|
119
|
-
{{#if isApiIntegration}}
|
|
120
|
-
case {{pascalCase serviceName}}ErrorCode.RATE_LIMIT_EXCEEDED:
|
|
121
|
-
// Handle rate limiting
|
|
122
|
-
break;
|
|
123
|
-
{{/if}}
|
|
124
|
-
default:
|
|
125
|
-
// Handle other errors
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
## API Reference
|
|
132
|
-
|
|
133
|
-
See the [TypeScript definitions](./dist/types.d.ts) for complete API documentation.
|
|
134
|
-
|
|
135
|
-
## Development
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
# Install dependencies
|
|
139
|
-
npm install
|
|
140
|
-
|
|
141
|
-
# Run tests
|
|
142
|
-
npm test
|
|
143
|
-
|
|
144
|
-
# Build
|
|
145
|
-
npm run build
|
|
146
|
-
|
|
147
|
-
# Type check
|
|
148
|
-
npm run typecheck
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
## License
|
|
152
|
-
|
|
153
|
-
MIT
|
|
154
|
-
|
|
155
|
-
---
|
|
156
|
-
|
|
157
|
-
*Generated by AIOX-FullStack Service Template*
|
|
158
|
-
*Story: {{storyId}}*
|
|
1
|
+
# {{pascalCase serviceName}} Service
|
|
2
|
+
|
|
3
|
+
> {{description}}
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @aiox/{{kebabCase serviceName}}
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
import { create{{pascalCase serviceName}}Service } from '@aiox/{{kebabCase serviceName}}';
|
|
15
|
+
|
|
16
|
+
const service = create{{pascalCase serviceName}}Service({
|
|
17
|
+
{{#each envVars}}
|
|
18
|
+
{{camelCase this.name}}: process.env.{{this.name}},
|
|
19
|
+
{{/each}}
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
// Use the service
|
|
23
|
+
const result = await service.execute();
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Configuration
|
|
27
|
+
|
|
28
|
+
### Environment Variables
|
|
29
|
+
|
|
30
|
+
| Variable | Required | Description |
|
|
31
|
+
|----------|----------|-------------|
|
|
32
|
+
{{#each envVars}}
|
|
33
|
+
| `{{this.name}}` | {{#if this.required}}Yes{{else}}No{{/if}} | {{this.description}} |
|
|
34
|
+
{{/each}}
|
|
35
|
+
|
|
36
|
+
### Programmatic Configuration
|
|
37
|
+
|
|
38
|
+
```typescript
|
|
39
|
+
import { create{{pascalCase serviceName}}Service, {{pascalCase serviceName}}Config } from '@aiox/{{kebabCase serviceName}}';
|
|
40
|
+
|
|
41
|
+
const config: {{pascalCase serviceName}}Config = {
|
|
42
|
+
{{#each envVars}}
|
|
43
|
+
{{camelCase this.name}}: '{{this.example}}',
|
|
44
|
+
{{/each}}
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const service = create{{pascalCase serviceName}}Service(config);
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
{{#if isApiIntegration}}
|
|
51
|
+
## API Integration
|
|
52
|
+
|
|
53
|
+
This service integrates with an external API. Features include:
|
|
54
|
+
|
|
55
|
+
- **Rate Limiting**: Automatic request throttling
|
|
56
|
+
- **Retry Logic**: Exponential backoff on failures
|
|
57
|
+
- **Error Handling**: Typed errors with actionable messages
|
|
58
|
+
|
|
59
|
+
### Rate Limits
|
|
60
|
+
|
|
61
|
+
> **Note:** The values below are placeholders. Update them according to your API's actual rate limits.
|
|
62
|
+
|
|
63
|
+
| Tier | Requests/min | Burst |
|
|
64
|
+
|------|--------------|-------|
|
|
65
|
+
| Free | 60 | 10 |
|
|
66
|
+
| Pro | 600 | 100 |
|
|
67
|
+
|
|
68
|
+
{{/if}}
|
|
69
|
+
## Usage Examples
|
|
70
|
+
|
|
71
|
+
### Basic Usage
|
|
72
|
+
|
|
73
|
+
```typescript
|
|
74
|
+
const service = create{{pascalCase serviceName}}Service(config);
|
|
75
|
+
|
|
76
|
+
try {
|
|
77
|
+
const result = await service.execute();
|
|
78
|
+
console.log('Success:', result);
|
|
79
|
+
} catch (error) {
|
|
80
|
+
if (error instanceof {{pascalCase serviceName}}Error) {
|
|
81
|
+
console.error('Service error:', error.code, error.message);
|
|
82
|
+
}
|
|
83
|
+
throw error;
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
{{#if hasAuth}}
|
|
88
|
+
### Authentication
|
|
89
|
+
|
|
90
|
+
This service requires authentication. Set your credentials via environment variables or config:
|
|
91
|
+
|
|
92
|
+
```typescript
|
|
93
|
+
const service = create{{pascalCase serviceName}}Service({
|
|
94
|
+
apiKey: process.env.{{upperCase serviceName}}_API_KEY,
|
|
95
|
+
// or
|
|
96
|
+
accessToken: process.env.{{upperCase serviceName}}_ACCESS_TOKEN,
|
|
97
|
+
});
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
{{/if}}
|
|
101
|
+
## Error Handling
|
|
102
|
+
|
|
103
|
+
The service provides typed errors for common failure scenarios:
|
|
104
|
+
|
|
105
|
+
```typescript
|
|
106
|
+
import { {{pascalCase serviceName}}Error, {{pascalCase serviceName}}ErrorCode } from '@aiox/{{kebabCase serviceName}}';
|
|
107
|
+
|
|
108
|
+
try {
|
|
109
|
+
await service.execute();
|
|
110
|
+
} catch (error) {
|
|
111
|
+
if (error instanceof {{pascalCase serviceName}}Error) {
|
|
112
|
+
switch (error.code) {
|
|
113
|
+
case {{pascalCase serviceName}}ErrorCode.CONFIGURATION_ERROR:
|
|
114
|
+
// Handle configuration issues
|
|
115
|
+
break;
|
|
116
|
+
case {{pascalCase serviceName}}ErrorCode.NETWORK_ERROR:
|
|
117
|
+
// Handle network issues
|
|
118
|
+
break;
|
|
119
|
+
{{#if isApiIntegration}}
|
|
120
|
+
case {{pascalCase serviceName}}ErrorCode.RATE_LIMIT_EXCEEDED:
|
|
121
|
+
// Handle rate limiting
|
|
122
|
+
break;
|
|
123
|
+
{{/if}}
|
|
124
|
+
default:
|
|
125
|
+
// Handle other errors
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
## API Reference
|
|
132
|
+
|
|
133
|
+
See the [TypeScript definitions](./dist/types.d.ts) for complete API documentation.
|
|
134
|
+
|
|
135
|
+
## Development
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
# Install dependencies
|
|
139
|
+
npm install
|
|
140
|
+
|
|
141
|
+
# Run tests
|
|
142
|
+
npm test
|
|
143
|
+
|
|
144
|
+
# Build
|
|
145
|
+
npm run build
|
|
146
|
+
|
|
147
|
+
# Type check
|
|
148
|
+
npm run typecheck
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## License
|
|
152
|
+
|
|
153
|
+
MIT
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
*Generated by AIOX-FullStack Service Template*
|
|
158
|
+
*Story: {{storyId}}*
|