@aramassa/ai-rules 0.3.0 → 0.3.3
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aramassa/ai-rules",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.3",
|
|
4
4
|
"description": "This repository collects guidelines and instructions for developing AI agents. It contains documents covering communication rules, coding standards, testing strategies, and general operational practices.",
|
|
5
5
|
"workspaces": [
|
|
6
6
|
"packages/extract",
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
3
|
+
"title": "Recipe File Schema",
|
|
4
|
+
"description": "JSON Schema for AI Rules recipe file validation",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"config": {
|
|
8
|
+
"type": "object",
|
|
9
|
+
"properties": {
|
|
10
|
+
"baseDir": {
|
|
11
|
+
"type": "string",
|
|
12
|
+
"description": "Base directory for output files"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"additionalProperties": false
|
|
16
|
+
},
|
|
17
|
+
"recipe": {
|
|
18
|
+
"type": "array",
|
|
19
|
+
"description": "Array of recipe items",
|
|
20
|
+
"items": {
|
|
21
|
+
"type": "object",
|
|
22
|
+
"properties": {
|
|
23
|
+
"import": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"description": "Import path to another recipe file or preset"
|
|
26
|
+
},
|
|
27
|
+
"baseDir": {
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "Import-level baseDir override"
|
|
30
|
+
},
|
|
31
|
+
"src": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"description": "Source directory for this recipe item"
|
|
34
|
+
},
|
|
35
|
+
"title": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Title for the output"
|
|
38
|
+
},
|
|
39
|
+
"out": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"description": "Output file path"
|
|
42
|
+
},
|
|
43
|
+
"type": {
|
|
44
|
+
"type": "string",
|
|
45
|
+
"description": "Filter by type"
|
|
46
|
+
},
|
|
47
|
+
"language": {
|
|
48
|
+
"type": "string",
|
|
49
|
+
"description": "Filter by language"
|
|
50
|
+
},
|
|
51
|
+
"mode": {
|
|
52
|
+
"type": "string",
|
|
53
|
+
"enum": ["append", "prepend", "overwrite"],
|
|
54
|
+
"description": "Write mode for the output file"
|
|
55
|
+
},
|
|
56
|
+
"frontmatter": {
|
|
57
|
+
"type": "object",
|
|
58
|
+
"description": "Frontmatter to add to the output file",
|
|
59
|
+
"additionalProperties": true
|
|
60
|
+
},
|
|
61
|
+
"filters": {
|
|
62
|
+
"type": "object",
|
|
63
|
+
"description": "Advanced filtering options using attribute filters",
|
|
64
|
+
"patternProperties": {
|
|
65
|
+
"^[a-zA-Z][a-zA-Z0-9_-]*$": {
|
|
66
|
+
"oneOf": [
|
|
67
|
+
{ "type": "string" },
|
|
68
|
+
{
|
|
69
|
+
"type": "array",
|
|
70
|
+
"items": { "type": "string" }
|
|
71
|
+
}
|
|
72
|
+
]
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"additionalProperties": false
|
|
76
|
+
},
|
|
77
|
+
"variables": {
|
|
78
|
+
"type": "object",
|
|
79
|
+
"description": "Template variables for the recipe item",
|
|
80
|
+
"additionalProperties": {
|
|
81
|
+
"type": "string"
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
},
|
|
85
|
+
"additionalProperties": false,
|
|
86
|
+
"anyOf": [
|
|
87
|
+
{ "required": ["import"] },
|
|
88
|
+
{ "required": ["out"] }
|
|
89
|
+
]
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
"required": ["recipe"],
|
|
94
|
+
"additionalProperties": false,
|
|
95
|
+
"errorMessage": {
|
|
96
|
+
"additionalProperties": "Unknown property at recipe root level. Did you mean to put this under 'filters' or 'frontmatter'?",
|
|
97
|
+
"properties": {
|
|
98
|
+
"recipe": {
|
|
99
|
+
"type": "Recipe must be an array",
|
|
100
|
+
"items": {
|
|
101
|
+
"additionalProperties": "Unknown property in recipe item. Common properties like 'category', 'focus' should be under 'filters', and 'description', 'applyTo' should be under 'frontmatter'"
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|