@reallyartificial/grain 0.3.0 → 0.3.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/dist/builder-server.d.ts +2 -0
- package/dist/builder-server.d.ts.map +1 -0
- package/dist/builder-server.js +156 -0
- package/dist/builder-server.js.map +1 -0
- package/dist/builder.html +1387 -0
- package/dist/cli.js +31 -21
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -9,11 +9,13 @@ Usage:
|
|
|
9
9
|
grain validate <file> Validate a .agent.yaml file
|
|
10
10
|
grain generate <file> [--channel] Generate system prompt
|
|
11
11
|
grain info <file> Show agent summary
|
|
12
|
+
grain builder [--port N] Open visual agent builder
|
|
12
13
|
|
|
13
14
|
Examples:
|
|
14
15
|
grain validate my-agent.agent.yaml
|
|
15
16
|
grain generate my-agent.agent.yaml --channel slack
|
|
16
|
-
grain info my-agent.agent.yaml
|
|
17
|
+
grain info my-agent.agent.yaml
|
|
18
|
+
grain builder`);
|
|
17
19
|
}
|
|
18
20
|
function validate(file) {
|
|
19
21
|
try {
|
|
@@ -90,28 +92,36 @@ if (!command || command === "--help" || command === "-h") {
|
|
|
90
92
|
printHelp();
|
|
91
93
|
process.exit(0);
|
|
92
94
|
}
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
95
|
+
if (command === "builder") {
|
|
96
|
+
const portIdx = args.indexOf("--port");
|
|
97
|
+
const port = portIdx !== -1 ? parseInt(args[portIdx + 1]) : undefined;
|
|
98
|
+
const { startBuilder } = await import("./builder-server.js");
|
|
99
|
+
startBuilder(port);
|
|
98
100
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
case "generate": {
|
|
104
|
-
const channelIdx = args.indexOf("--channel");
|
|
105
|
-
const channel = channelIdx !== -1 ? args[channelIdx + 1] : undefined;
|
|
106
|
-
generate(file, channel);
|
|
107
|
-
break;
|
|
108
|
-
}
|
|
109
|
-
case "info":
|
|
110
|
-
info(file);
|
|
111
|
-
break;
|
|
112
|
-
default:
|
|
113
|
-
console.error(`Unknown command: ${command}\n`);
|
|
101
|
+
else {
|
|
102
|
+
const file = args[1];
|
|
103
|
+
if (!file) {
|
|
104
|
+
console.error(`Error: missing file argument\n`);
|
|
114
105
|
printHelp();
|
|
115
106
|
process.exit(1);
|
|
107
|
+
}
|
|
108
|
+
switch (command) {
|
|
109
|
+
case "validate":
|
|
110
|
+
validate(file);
|
|
111
|
+
break;
|
|
112
|
+
case "generate": {
|
|
113
|
+
const channelIdx = args.indexOf("--channel");
|
|
114
|
+
const channel = channelIdx !== -1 ? args[channelIdx + 1] : undefined;
|
|
115
|
+
generate(file, channel);
|
|
116
|
+
break;
|
|
117
|
+
}
|
|
118
|
+
case "info":
|
|
119
|
+
info(file);
|
|
120
|
+
break;
|
|
121
|
+
default:
|
|
122
|
+
console.error(`Unknown command: ${command}\n`);
|
|
123
|
+
printHelp();
|
|
124
|
+
process.exit(1);
|
|
125
|
+
}
|
|
116
126
|
}
|
|
117
127
|
//# sourceMappingURL=cli.js.map
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAClC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AAEvB,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAClC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;AAEvB,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;gBAYE,CAAC,CAAA;AACjB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAA;QAC3B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,2BAA2B,IAAI,GAAG,CAAC,CAAA;YACjD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;YAChD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,WAAW,CAAC,CAAA;IACjC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAgB;IAC9C,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAClC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IACrB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,SAAS,IAAI,CAAC,IAAY;IACxB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACrC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;QACnC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QACxC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;QACtD,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;QAEnD,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;YAC3D,OAAO,CAAC,GAAG,CAAC,gBAAgB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACpD,CAAC;QAED,MAAM,CAAC,GAAG,CAAC,CAAC,WAAW,CAAA;QACvB,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;aACvC,IAAI,CAAC,CAAC,SAAS,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACjD,IAAI,CAAC,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,CAAC,CAAC,KAAK,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAC1C,IAAI,CAAC,CAAC,aAAa,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACnD,IAAI,CAAC,CAAC,UAAU,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QAChD,IAAI,CAAC,CAAC,YAAY,GAAG,GAAG;YAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACjD,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClD,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QAC7C,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;QAClD,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC;AAED,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;IACzD,SAAS,EAAE,CAAA;IACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACrE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAA;IAC5D,YAAY,CAAC,IAAI,CAAC,CAAA;AACpB,CAAC;KAAM,CAAC;IACN,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACpB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;QAC/C,SAAS,EAAE,CAAA;QACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IAED,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,UAAU;YACb,QAAQ,CAAC,IAAI,CAAC,CAAA;YACd,MAAK;QACP,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;YAC5C,MAAM,OAAO,GAAG,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;YACpE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACvB,MAAK;QACP,CAAC;QACD,KAAK,MAAM;YACT,IAAI,CAAC,IAAI,CAAC,CAAA;YACV,MAAK;QACP;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,IAAI,CAAC,CAAA;YAC9C,SAAS,EAAE,CAAA;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export { Grain } from "./grain.js";
|
|
2
2
|
export { Presets } from "./presets.js";
|
|
3
3
|
export { toBigFive } from "./types.js";
|
|
4
|
+
export { validateSpec } from "./validate.js";
|
|
5
|
+
export { resolveDefaults } from "./defaults.js";
|
|
6
|
+
export { generateSystemPrompt } from "./prompt-generator.js";
|
|
4
7
|
export type { ValidationError } from "./validate.js";
|
|
5
8
|
export type { AgentSpec, AgentMeta, ModelPreference, AgentIdentity, DomainExpertise, AgentRelationship, AgentVoice, PersonalityVector, LanguageStyle, BigFiveMapping, AgentCognition, ReasoningStyle, DecisionMaking, UncertaintyHandling, TaskStrategy, AgentCapabilities, ToolCapability, SkillDefinition, KnowledgeSource, OutputFormat, AgentBehavior, BehaviorRule, RuleCondition, RuleAction, Boundary, BehaviorTrigger, TriggerEvent, EscalationPolicy, EscalationCondition, AgentMemory, RetentionPolicy, ContextStrategy, StateSchema, AgentCommunication, ChannelConfig, InputProcessing, OutputProcessing, InterAgentConfig, AgentAdaptation, DriftBound, LearningConfig, FeedbackConfig, AgentObservability, LoggingConfig, MetricDefinition, SuccessCriterion, } from "./types.js";
|
|
6
9
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,YAAY,EACV,SAAS,EACT,SAAS,EACT,eAAe,EACf,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,UAAU,EACV,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,YAAY,EACV,SAAS,EACT,SAAS,EACT,eAAe,EACf,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,cAAc,EACd,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,eAAe,EACf,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,UAAU,EACV,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,UAAU,EACV,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,YAAY,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
export { Grain } from "./grain.js";
|
|
2
2
|
export { Presets } from "./presets.js";
|
|
3
3
|
export { toBigFive } from "./types.js";
|
|
4
|
+
export { validateSpec } from "./validate.js";
|
|
5
|
+
export { resolveDefaults } from "./defaults.js";
|
|
6
|
+
export { generateSystemPrompt } from "./prompt-generator.js";
|
|
4
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reallyartificial/grain",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.2",
|
|
4
4
|
"description": "Grain — a structured data format for describing AI agents.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
],
|
|
22
22
|
"scripts": {
|
|
23
23
|
"prebuild": "cp ../../spec/agentspec.schema.json ./agentspec.schema.json 2>/dev/null || true",
|
|
24
|
-
"build": "tsc",
|
|
24
|
+
"build": "tsc && cp src/builder.html dist/builder.html",
|
|
25
25
|
"test": "vitest run --dir src",
|
|
26
26
|
"prepublishOnly": "npm run build && npm test",
|
|
27
27
|
"validate": "tsx src/load.ts"
|