struere 0.5.14 → 0.5.16

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.
@@ -19939,7 +19939,7 @@ export default defineRole({
19939
19939
  name: "${name}",
19940
19940
  description: "${name.charAt(0).toUpperCase() + name.slice(1)} role",
19941
19941
  policies: [
19942
- { resource: "*", actions: ["list", "read"], effect: "allow", priority: 50 },
19942
+ { resource: "*", actions: ["list", "read"], effect: "allow" },
19943
19943
  ],
19944
19944
  scopeRules: [],
19945
19945
  fieldMasks: [],
@@ -20096,6 +20096,7 @@ Struere is a framework for building production AI agents with Convex as the real
20096
20096
  \u2502 \u251C\u2500\u2500 agents/*.ts \u2192 Agent configs synced to Convex \u2502
20097
20097
  \u2502 \u251C\u2500\u2500 entity-types/*.ts \u2192 Schema definitions synced to Convex \u2502
20098
20098
  \u2502 \u251C\u2500\u2500 roles/*.ts \u2192 RBAC policies synced to Convex \u2502
20099
+ \u2502 \u251C\u2500\u2500 triggers/*.ts \u2192 Automation rules synced to Convex \u2502
20099
20100
  \u2502 \u251C\u2500\u2500 tools/index.ts \u2192 Custom tools (run on CF Worker) \u2502
20100
20101
  \u2502 \u2514\u2500\u2500 evals/*.eval.yaml \u2192 Test suites (synced + executed) \u2502
20101
20102
  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518
@@ -20134,6 +20135,10 @@ roles/ # RBAC: who can do what
20134
20135
  \u251C\u2500\u2500 support.ts # Limited access
20135
20136
  \u2514\u2500\u2500 index.ts
20136
20137
 
20138
+ triggers/ # Automation rules (react to entity changes)
20139
+ \u251C\u2500\u2500 notify-on-create.ts
20140
+ \u2514\u2500\u2500 index.ts
20141
+
20137
20142
  tools/ # Custom tools shared by all agents
20138
20143
  \u2514\u2500\u2500 index.ts # defineTools([...])
20139
20144
 
@@ -20174,6 +20179,7 @@ export default defineConfig({
20174
20179
  | \`struere add agent <name>\` | Create agents/name.ts with template |
20175
20180
  | \`struere add entity-type <name>\` | Create entity-types/name.ts |
20176
20181
  | \`struere add role <name>\` | Create roles/name.ts |
20182
+ | \`struere add trigger <name>\` | Create triggers/name.ts with template |
20177
20183
  | \`struere add eval <name>\` | Create evals/name.eval.yaml with template |
20178
20184
  | \`struere eval\` | Run all eval suites |
20179
20185
  | \`struere eval --suite <name>\` | Run a specific eval suite |
@@ -20296,9 +20302,9 @@ export default defineRole({
20296
20302
 
20297
20303
  // What actions are allowed/denied
20298
20304
  policies: [
20299
- { resource: "customer", actions: ["list", "read"], effect: "allow", priority: 50 },
20300
- { resource: "customer", actions: ["delete"], effect: "deny", priority: 100 },
20301
- { resource: "payment", actions: ["*"], effect: "deny", priority: 100 },
20305
+ { resource: "customer", actions: ["list", "read"], effect: "allow" },
20306
+ { resource: "customer", actions: ["delete"], effect: "deny" },
20307
+ { resource: "payment", actions: ["*"], effect: "deny" },
20302
20308
  ],
20303
20309
 
20304
20310
  // Row-level security: only see assigned customers
@@ -20326,7 +20332,7 @@ Every tool call goes through permission checks:
20326
20332
  2. **Scope filter**: Query results filtered to rows user can access
20327
20333
  3. **Field mask**: Sensitive fields hidden/redacted in response
20328
20334
 
20329
- Deny policies override allow. Higher priority wins.
20335
+ Deny policies always override allow.
20330
20336
 
20331
20337
  ## Defining Custom Tools
20332
20338
 
@@ -20396,6 +20402,103 @@ Custom tool handlers can only fetch from:
20396
20402
  - api.stripe.com, api.sendgrid.com, api.twilio.com
20397
20403
  - hooks.slack.com, discord.com, api.github.com
20398
20404
 
20405
+ ## Defining Triggers
20406
+
20407
+ Triggers are automated actions that fire when entities are created, updated, or deleted. They run asynchronously after the mutation completes.
20408
+
20409
+ Create \\\`triggers/notify-on-session.ts\\\`:
20410
+ \\\`\\\`\\\`typescript
20411
+ import { defineTrigger } from 'struere'
20412
+
20413
+ export default defineTrigger({
20414
+ name: "Notify Teacher on New Session",
20415
+ slug: "notify-teacher-on-session",
20416
+ on: {
20417
+ entityType: "session",
20418
+ action: "created",
20419
+ condition: { "data.status": "scheduled" } // optional
20420
+ },
20421
+ actions: [
20422
+ {
20423
+ tool: "entity.get",
20424
+ args: { id: "{{trigger.data.teacherId}}" },
20425
+ as: "teacher" // store result for later steps
20426
+ },
20427
+ {
20428
+ tool: "event.emit",
20429
+ args: {
20430
+ eventType: "notification.sent",
20431
+ entityId: "{{trigger.entityId}}",
20432
+ payload: {
20433
+ teacherName: "{{steps.teacher.data.name}}",
20434
+ sessionTime: "{{trigger.data.startTime}}"
20435
+ }
20436
+ }
20437
+ }
20438
+ ]
20439
+ })
20440
+ \\\`\\\`\\\`
20441
+
20442
+ ### Trigger Config
20443
+
20444
+ | Field | Required | Description |
20445
+ |-------|----------|-------------|
20446
+ | \\\`name\\\` | Yes | Display name |
20447
+ | \\\`slug\\\` | Yes | Unique identifier (used for sync) |
20448
+ | \\\`on.entityType\\\` | Yes | Entity type slug to watch |
20449
+ | \\\`on.action\\\` | Yes | \\\`"created"\\\`, \\\`"updated"\\\`, or \\\`"deleted"\\\` |
20450
+ | \\\`on.condition\\\` | No | Dot-notation equality conditions on entity data |
20451
+ | \\\`actions\\\` | Yes | Ordered list of tool calls to execute |
20452
+
20453
+ ### Action Pipeline
20454
+
20455
+ Each action in the \\\`actions\\\` array runs sequentially:
20456
+
20457
+ | Field | Required | Description |
20458
+ |-------|----------|-------------|
20459
+ | \\\`tool\\\` | Yes | Built-in or custom tool name |
20460
+ | \\\`args\\\` | Yes | Arguments (supports \\\`{{template}}\\\` variables) |
20461
+ | \\\`as\\\` | No | Store result under this name for later steps |
20462
+
20463
+ ### Template Variables
20464
+
20465
+ Use \\\`{{...}}\\\` in action args to reference trigger context and previous step results:
20466
+
20467
+ | Variable | Description |
20468
+ |----------|-------------|
20469
+ | \\\`{{trigger.entityId}}\\\` | ID of the entity that changed |
20470
+ | \\\`{{trigger.entityType}}\\\` | Entity type slug |
20471
+ | \\\`{{trigger.action}}\\\` | \\\`"created"\\\`, \\\`"updated"\\\`, or \\\`"deleted"\\\` |
20472
+ | \\\`{{trigger.data.X}}\\\` | Entity data field (e.g. \\\`{{trigger.data.email}}\\\`) |
20473
+ | \\\`{{trigger.previousData.X}}\\\` | Previous value (updates/deletes only) |
20474
+ | \\\`{{steps.NAME.X}}\\\` | Result from a prior action with \\\`as: "NAME"\\\` |
20475
+
20476
+ ### Conditions
20477
+
20478
+ Conditions use dot-notation path equality matching:
20479
+ \\\`\\\`\\\`typescript
20480
+ condition: {
20481
+ "data.status": "scheduled", // field must equal value
20482
+ "data.priority": "high" // all conditions must match (AND)
20483
+ }
20484
+ \\\`\\\`\\\`
20485
+
20486
+ ### Execution Model
20487
+
20488
+ - **Async**: Triggers are scheduled after the mutation, keeping writes fast
20489
+ - **System actor**: Actions execute with full admin access (not the user's role)
20490
+ - **Fail-fast**: If any action fails, remaining actions are skipped
20491
+ - **Events**: Emits \\\`trigger.executed\\\` on success, \\\`trigger.failed\\\` on error
20492
+ - **Both paths**: Triggers fire from dashboard CRUD, agent tool calls, and API mutations
20493
+
20494
+ ### Scaffold a new trigger
20495
+
20496
+ \\\`\\\`\\\`bash
20497
+ struere add trigger my-trigger
20498
+ \\\`\\\`\\\`
20499
+
20500
+ Creates \\\`triggers/my-trigger.ts\\\` with a starter template.
20501
+
20399
20502
  ## Built-in Tools Reference
20400
20503
 
20401
20504
  ### Entity Tools
@@ -20654,6 +20757,29 @@ Always confirm what was created/updated.\\\`,
20654
20757
  \`\`\`
20655
20758
  `;
20656
20759
  }
20760
+ function getTriggerTs(name, slug) {
20761
+ return `import { defineTrigger } from 'struere'
20762
+
20763
+ export default defineTrigger({
20764
+ name: "${name}",
20765
+ slug: "${slug}",
20766
+ on: {
20767
+ entityType: "ENTITY_TYPE_HERE",
20768
+ action: "created",
20769
+ },
20770
+ actions: [
20771
+ {
20772
+ tool: "event.emit",
20773
+ args: {
20774
+ eventType: "trigger.${slug}.fired",
20775
+ entityId: "{{trigger.entityId}}",
20776
+ payload: { triggeredBy: "${slug}" },
20777
+ },
20778
+ },
20779
+ ],
20780
+ })
20781
+ `;
20782
+ }
20657
20783
 
20658
20784
  // src/cli/utils/scaffold.ts
20659
20785
  function ensureDir(filePath) {
@@ -20677,7 +20803,8 @@ function scaffoldProjectV2(cwd, options) {
20677
20803
  "entity-types",
20678
20804
  "roles",
20679
20805
  "tools",
20680
- "evals"
20806
+ "evals",
20807
+ "triggers"
20681
20808
  ];
20682
20809
  for (const dir of directories) {
20683
20810
  const dirPath = join3(cwd, dir);
@@ -20697,6 +20824,7 @@ function scaffoldProjectV2(cwd, options) {
20697
20824
  "entity-types/index.ts": getIndexTs("entity-types"),
20698
20825
  "roles/index.ts": getIndexTs("roles"),
20699
20826
  "tools/index.ts": getToolsIndexTs(),
20827
+ "triggers/index.ts": getIndexTs("triggers"),
20700
20828
  "evals/basic-agent-tests.eval.yaml": getExampleEvalYaml("my-agent")
20701
20829
  };
20702
20830
  for (const [relativePath, content] of Object.entries(files)) {
@@ -20782,6 +20910,24 @@ function scaffoldEval(cwd, name, slug, agentSlug = "my-agent") {
20782
20910
  result.createdFiles.push(`evals/${fileName}`);
20783
20911
  return result;
20784
20912
  }
20913
+ function scaffoldTrigger(cwd, name, slug) {
20914
+ const result = {
20915
+ createdFiles: [],
20916
+ updatedFiles: []
20917
+ };
20918
+ const triggersDir = join3(cwd, "triggers");
20919
+ if (!existsSync3(triggersDir)) {
20920
+ mkdirSync2(triggersDir, { recursive: true });
20921
+ }
20922
+ const fileName = `${slug}.ts`;
20923
+ const filePath = join3(triggersDir, fileName);
20924
+ if (existsSync3(filePath)) {
20925
+ return result;
20926
+ }
20927
+ writeFileSync3(filePath, getTriggerTs(name, slug));
20928
+ result.createdFiles.push(`triggers/${fileName}`);
20929
+ return result;
20930
+ }
20785
20931
 
20786
20932
  // src/cli/commands/init.ts
20787
20933
  async function runInit(cwd, selectedOrg) {
@@ -20985,7 +21131,8 @@ async function loadAllResources(cwd) {
20985
21131
  }
20986
21132
  const { suites: evalSuites, errors: evalErrors } = loadAllEvalSuites(join4(cwd, "evals"));
20987
21133
  errors2.push(...evalErrors);
20988
- return { agents, entityTypes, roles, customTools, evalSuites, errors: errors2 };
21134
+ const triggers = await loadAllTriggers(join4(cwd, "triggers"));
21135
+ return { agents, entityTypes, roles, customTools, evalSuites, triggers, errors: errors2 };
20989
21136
  }
20990
21137
  async function loadAllAgents(dir) {
20991
21138
  if (!existsSync4(dir)) {
@@ -21093,13 +21240,24 @@ function loadAllEvalSuites(dir) {
21093
21240
  }
21094
21241
  return { suites, errors: errors2 };
21095
21242
  }
21243
+ async function loadAllTriggers(dir) {
21244
+ if (!existsSync4(dir)) {
21245
+ return [];
21246
+ }
21247
+ const indexPath = join4(dir, "index.ts");
21248
+ if (existsSync4(indexPath)) {
21249
+ return loadFromIndex(indexPath);
21250
+ }
21251
+ return loadFromDirectory(dir);
21252
+ }
21096
21253
  function getResourceDirectories(cwd) {
21097
21254
  return {
21098
21255
  agents: join4(cwd, "agents"),
21099
21256
  entityTypes: join4(cwd, "entity-types"),
21100
21257
  roles: join4(cwd, "roles"),
21101
21258
  tools: join4(cwd, "tools"),
21102
- evals: join4(cwd, "evals")
21259
+ evals: join4(cwd, "evals"),
21260
+ triggers: join4(cwd, "triggers")
21103
21261
  };
21104
21262
  }
21105
21263
 
@@ -21122,7 +21280,12 @@ var BUILTIN_TOOLS = [
21122
21280
  "event.emit",
21123
21281
  "event.query",
21124
21282
  "job.enqueue",
21125
- "job.status"
21283
+ "job.status",
21284
+ "calendar.list",
21285
+ "calendar.create",
21286
+ "calendar.update",
21287
+ "calendar.delete",
21288
+ "calendar.freeBusy"
21126
21289
  ];
21127
21290
  function extractSyncPayload(resources) {
21128
21291
  const customToolsMap = new Map;
@@ -21143,8 +21306,7 @@ function extractSyncPayload(resources) {
21143
21306
  policies: role.policies.map((p) => ({
21144
21307
  resource: p.resource,
21145
21308
  actions: p.actions,
21146
- effect: p.effect,
21147
- priority: p.priority
21309
+ effect: p.effect
21148
21310
  })),
21149
21311
  scopeRules: role.scopeRules?.map((sr) => ({
21150
21312
  entityType: sr.entityType,
@@ -21179,7 +21341,20 @@ function extractSyncPayload(resources) {
21179
21341
  finalAssertions: c.finalAssertions
21180
21342
  }))
21181
21343
  })) : undefined;
21182
- return { agents, entityTypes, roles, evalSuites };
21344
+ const triggers = resources.triggers.length > 0 ? resources.triggers.map((t) => ({
21345
+ name: t.name,
21346
+ slug: t.slug,
21347
+ description: t.description,
21348
+ entityType: t.on.entityType,
21349
+ action: t.on.action,
21350
+ condition: t.on.condition,
21351
+ actions: t.actions.map((a) => ({
21352
+ tool: a.tool,
21353
+ args: a.args,
21354
+ as: a.as
21355
+ }))
21356
+ })) : undefined;
21357
+ return { agents, entityTypes, roles, evalSuites, triggers };
21183
21358
  }
21184
21359
  function extractAgentPayload(agent, customToolsMap) {
21185
21360
  let systemPrompt;
@@ -21242,7 +21417,12 @@ function getBuiltinToolDescription(name) {
21242
21417
  "event.emit": "Emit a custom event for audit logging",
21243
21418
  "event.query": "Query historical events with optional filters",
21244
21419
  "job.enqueue": "Schedule a background job to run later",
21245
- "job.status": "Get the status of a scheduled job"
21420
+ "job.status": "Get the status of a scheduled job",
21421
+ "calendar.list": "List Google Calendar events for a user within a time range",
21422
+ "calendar.create": "Create a Google Calendar event on a user's calendar",
21423
+ "calendar.update": "Update an existing Google Calendar event",
21424
+ "calendar.delete": "Delete a Google Calendar event",
21425
+ "calendar.freeBusy": "Check free/busy availability on a user's Google Calendar"
21246
21426
  };
21247
21427
  return descriptions[name] || name;
21248
21428
  }
@@ -21348,6 +21528,60 @@ function getBuiltinToolParameters(name) {
21348
21528
  id: { type: "string", description: "The job ID to check" }
21349
21529
  },
21350
21530
  required: ["id"]
21531
+ },
21532
+ "calendar.list": {
21533
+ type: "object",
21534
+ properties: {
21535
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar to query" },
21536
+ timeMin: { type: "string", description: "Start of time range (ISO 8601 datetime)" },
21537
+ timeMax: { type: "string", description: "End of time range (ISO 8601 datetime)" },
21538
+ maxResults: { type: "number", description: "Maximum number of events to return" }
21539
+ },
21540
+ required: ["userId", "timeMin", "timeMax"]
21541
+ },
21542
+ "calendar.create": {
21543
+ type: "object",
21544
+ properties: {
21545
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar to create the event on" },
21546
+ summary: { type: "string", description: "Event title" },
21547
+ startTime: { type: "string", description: "Event start time (ISO 8601 datetime)" },
21548
+ endTime: { type: "string", description: "Event end time (ISO 8601 datetime)" },
21549
+ description: { type: "string", description: "Event description" },
21550
+ attendees: { type: "array", items: { type: "string" }, description: "List of attendee email addresses" },
21551
+ timeZone: { type: "string", description: 'Time zone (e.g., "America/Santiago")' }
21552
+ },
21553
+ required: ["userId", "summary", "startTime", "endTime"]
21554
+ },
21555
+ "calendar.update": {
21556
+ type: "object",
21557
+ properties: {
21558
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar contains the event" },
21559
+ eventId: { type: "string", description: "Google Calendar event ID to update" },
21560
+ summary: { type: "string", description: "New event title" },
21561
+ startTime: { type: "string", description: "New start time (ISO 8601 datetime)" },
21562
+ endTime: { type: "string", description: "New end time (ISO 8601 datetime)" },
21563
+ description: { type: "string", description: "New event description" },
21564
+ attendees: { type: "array", items: { type: "string" }, description: "Updated list of attendee emails" },
21565
+ status: { type: "string", description: "Event status (confirmed, tentative, cancelled)" }
21566
+ },
21567
+ required: ["userId", "eventId"]
21568
+ },
21569
+ "calendar.delete": {
21570
+ type: "object",
21571
+ properties: {
21572
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar contains the event" },
21573
+ eventId: { type: "string", description: "Google Calendar event ID to delete" }
21574
+ },
21575
+ required: ["userId", "eventId"]
21576
+ },
21577
+ "calendar.freeBusy": {
21578
+ type: "object",
21579
+ properties: {
21580
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose availability to check" },
21581
+ timeMin: { type: "string", description: "Start of time range (ISO 8601 datetime)" },
21582
+ timeMax: { type: "string", description: "End of time range (ISO 8601 datetime)" }
21583
+ },
21584
+ required: ["userId", "timeMin", "timeMax"]
21351
21585
  }
21352
21586
  };
21353
21587
  return schemas[name] || { type: "object", properties: {} };
@@ -21486,7 +21720,7 @@ var devCommand = new Command("dev").description("Sync all resources to developme
21486
21720
  spinner.start("Loading resources");
21487
21721
  try {
21488
21722
  const resources = await loadAllResources(cwd);
21489
- spinner.succeed(`Loaded ${resources.agents.length} agents, ${resources.entityTypes.length} entity types, ${resources.roles.length} roles, ${resources.customTools.length} custom tools, ${resources.evalSuites.length} eval suites`);
21723
+ spinner.succeed(`Loaded ${resources.agents.length} agents, ${resources.entityTypes.length} entity types, ${resources.roles.length} roles, ${resources.customTools.length} custom tools, ${resources.evalSuites.length} eval suites, ${resources.triggers.length} triggers`);
21490
21724
  for (const err of resources.errors) {
21491
21725
  console.log(source_default.red(" \u2716"), err);
21492
21726
  }
@@ -21545,6 +21779,7 @@ var devCommand = new Command("dev").description("Sync all resources to developme
21545
21779
  dirs.roles,
21546
21780
  dirs.tools,
21547
21781
  dirs.evals,
21782
+ dirs.triggers,
21548
21783
  join5(cwd, "struere.config.ts")
21549
21784
  ].filter((p) => existsSync5(p));
21550
21785
  const watcher = import_chokidar.default.watch(watchPaths, {
@@ -22514,6 +22749,17 @@ var addCommand = new Command("add").description("Scaffold a new resource").argum
22514
22749
  console.log(source_default.yellow("Eval suite already exists:"), `evals/${slug}.eval.yaml`);
22515
22750
  }
22516
22751
  break;
22752
+ case "trigger":
22753
+ result = scaffoldTrigger(cwd, displayName, slug);
22754
+ if (result.createdFiles.length > 0) {
22755
+ console.log(source_default.green("\u2713"), `Created trigger "${displayName}"`);
22756
+ for (const file of result.createdFiles) {
22757
+ console.log(source_default.gray(" \u2192"), file);
22758
+ }
22759
+ } else {
22760
+ console.log(source_default.yellow("Trigger already exists:"), `triggers/${slug}.ts`);
22761
+ }
22762
+ break;
22517
22763
  default:
22518
22764
  console.log(source_default.red("Unknown resource type:"), type);
22519
22765
  console.log();
@@ -22522,6 +22768,7 @@ var addCommand = new Command("add").description("Scaffold a new resource").argum
22522
22768
  console.log(source_default.gray(" -"), source_default.cyan("entity-type"), "- Create an entity type schema");
22523
22769
  console.log(source_default.gray(" -"), source_default.cyan("role"), "- Create a role with permissions");
22524
22770
  console.log(source_default.gray(" -"), source_default.cyan("eval"), "- Create an eval suite (YAML)");
22771
+ console.log(source_default.gray(" -"), source_default.cyan("trigger"), "- Create an entity trigger");
22525
22772
  console.log();
22526
22773
  process.exit(1);
22527
22774
  }
@@ -22801,9 +23048,6 @@ function generateRoleFile(role) {
22801
23048
  ` actions: ${JSON.stringify(p.actions)}`,
22802
23049
  ` effect: "${p.effect}"`
22803
23050
  ];
22804
- if (p.priority !== 50) {
22805
- pParts.push(` priority: ${p.priority}`);
22806
- }
22807
23051
  return ` {
22808
23052
  ${pParts.join(`,
22809
23053
  `)},
@@ -23080,7 +23324,7 @@ var pullCommand = new Command("pull").description("Pull remote resources to loca
23080
23324
  // package.json
23081
23325
  var package_default = {
23082
23326
  name: "struere",
23083
- version: "0.5.14",
23327
+ version: "0.5.16",
23084
23328
  description: "Build, test, and deploy AI agents",
23085
23329
  keywords: [
23086
23330
  "ai",
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,eAAO,MAAM,UAAU,SAwGnB,CAAA"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,eAAO,MAAM,UAAU,SAqHnB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAenC,eAAO,MAAM,UAAU,SA+RnB,CAAA"}
1
+ {"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAenC,eAAO,MAAM,UAAU,SAgSnB,CAAA"}
package/dist/cli/index.js CHANGED
@@ -732,7 +732,7 @@ export default defineRole({
732
732
  name: "${name}",
733
733
  description: "${name.charAt(0).toUpperCase() + name.slice(1)} role",
734
734
  policies: [
735
- { resource: "*", actions: ["list", "read"], effect: "allow", priority: 50 },
735
+ { resource: "*", actions: ["list", "read"], effect: "allow" },
736
736
  ],
737
737
  scopeRules: [],
738
738
  fieldMasks: [],
@@ -889,6 +889,7 @@ Struere is a framework for building production AI agents with Convex as the real
889
889
  \u2502 \u251C\u2500\u2500 agents/*.ts \u2192 Agent configs synced to Convex \u2502
890
890
  \u2502 \u251C\u2500\u2500 entity-types/*.ts \u2192 Schema definitions synced to Convex \u2502
891
891
  \u2502 \u251C\u2500\u2500 roles/*.ts \u2192 RBAC policies synced to Convex \u2502
892
+ \u2502 \u251C\u2500\u2500 triggers/*.ts \u2192 Automation rules synced to Convex \u2502
892
893
  \u2502 \u251C\u2500\u2500 tools/index.ts \u2192 Custom tools (run on CF Worker) \u2502
893
894
  \u2502 \u2514\u2500\u2500 evals/*.eval.yaml \u2192 Test suites (synced + executed) \u2502
894
895
  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518
@@ -927,6 +928,10 @@ roles/ # RBAC: who can do what
927
928
  \u251C\u2500\u2500 support.ts # Limited access
928
929
  \u2514\u2500\u2500 index.ts
929
930
 
931
+ triggers/ # Automation rules (react to entity changes)
932
+ \u251C\u2500\u2500 notify-on-create.ts
933
+ \u2514\u2500\u2500 index.ts
934
+
930
935
  tools/ # Custom tools shared by all agents
931
936
  \u2514\u2500\u2500 index.ts # defineTools([...])
932
937
 
@@ -967,6 +972,7 @@ export default defineConfig({
967
972
  | \`struere add agent <name>\` | Create agents/name.ts with template |
968
973
  | \`struere add entity-type <name>\` | Create entity-types/name.ts |
969
974
  | \`struere add role <name>\` | Create roles/name.ts |
975
+ | \`struere add trigger <name>\` | Create triggers/name.ts with template |
970
976
  | \`struere add eval <name>\` | Create evals/name.eval.yaml with template |
971
977
  | \`struere eval\` | Run all eval suites |
972
978
  | \`struere eval --suite <name>\` | Run a specific eval suite |
@@ -1089,9 +1095,9 @@ export default defineRole({
1089
1095
 
1090
1096
  // What actions are allowed/denied
1091
1097
  policies: [
1092
- { resource: "customer", actions: ["list", "read"], effect: "allow", priority: 50 },
1093
- { resource: "customer", actions: ["delete"], effect: "deny", priority: 100 },
1094
- { resource: "payment", actions: ["*"], effect: "deny", priority: 100 },
1098
+ { resource: "customer", actions: ["list", "read"], effect: "allow" },
1099
+ { resource: "customer", actions: ["delete"], effect: "deny" },
1100
+ { resource: "payment", actions: ["*"], effect: "deny" },
1095
1101
  ],
1096
1102
 
1097
1103
  // Row-level security: only see assigned customers
@@ -1119,7 +1125,7 @@ Every tool call goes through permission checks:
1119
1125
  2. **Scope filter**: Query results filtered to rows user can access
1120
1126
  3. **Field mask**: Sensitive fields hidden/redacted in response
1121
1127
 
1122
- Deny policies override allow. Higher priority wins.
1128
+ Deny policies always override allow.
1123
1129
 
1124
1130
  ## Defining Custom Tools
1125
1131
 
@@ -1189,6 +1195,103 @@ Custom tool handlers can only fetch from:
1189
1195
  - api.stripe.com, api.sendgrid.com, api.twilio.com
1190
1196
  - hooks.slack.com, discord.com, api.github.com
1191
1197
 
1198
+ ## Defining Triggers
1199
+
1200
+ Triggers are automated actions that fire when entities are created, updated, or deleted. They run asynchronously after the mutation completes.
1201
+
1202
+ Create \\\`triggers/notify-on-session.ts\\\`:
1203
+ \\\`\\\`\\\`typescript
1204
+ import { defineTrigger } from 'struere'
1205
+
1206
+ export default defineTrigger({
1207
+ name: "Notify Teacher on New Session",
1208
+ slug: "notify-teacher-on-session",
1209
+ on: {
1210
+ entityType: "session",
1211
+ action: "created",
1212
+ condition: { "data.status": "scheduled" } // optional
1213
+ },
1214
+ actions: [
1215
+ {
1216
+ tool: "entity.get",
1217
+ args: { id: "{{trigger.data.teacherId}}" },
1218
+ as: "teacher" // store result for later steps
1219
+ },
1220
+ {
1221
+ tool: "event.emit",
1222
+ args: {
1223
+ eventType: "notification.sent",
1224
+ entityId: "{{trigger.entityId}}",
1225
+ payload: {
1226
+ teacherName: "{{steps.teacher.data.name}}",
1227
+ sessionTime: "{{trigger.data.startTime}}"
1228
+ }
1229
+ }
1230
+ }
1231
+ ]
1232
+ })
1233
+ \\\`\\\`\\\`
1234
+
1235
+ ### Trigger Config
1236
+
1237
+ | Field | Required | Description |
1238
+ |-------|----------|-------------|
1239
+ | \\\`name\\\` | Yes | Display name |
1240
+ | \\\`slug\\\` | Yes | Unique identifier (used for sync) |
1241
+ | \\\`on.entityType\\\` | Yes | Entity type slug to watch |
1242
+ | \\\`on.action\\\` | Yes | \\\`"created"\\\`, \\\`"updated"\\\`, or \\\`"deleted"\\\` |
1243
+ | \\\`on.condition\\\` | No | Dot-notation equality conditions on entity data |
1244
+ | \\\`actions\\\` | Yes | Ordered list of tool calls to execute |
1245
+
1246
+ ### Action Pipeline
1247
+
1248
+ Each action in the \\\`actions\\\` array runs sequentially:
1249
+
1250
+ | Field | Required | Description |
1251
+ |-------|----------|-------------|
1252
+ | \\\`tool\\\` | Yes | Built-in or custom tool name |
1253
+ | \\\`args\\\` | Yes | Arguments (supports \\\`{{template}}\\\` variables) |
1254
+ | \\\`as\\\` | No | Store result under this name for later steps |
1255
+
1256
+ ### Template Variables
1257
+
1258
+ Use \\\`{{...}}\\\` in action args to reference trigger context and previous step results:
1259
+
1260
+ | Variable | Description |
1261
+ |----------|-------------|
1262
+ | \\\`{{trigger.entityId}}\\\` | ID of the entity that changed |
1263
+ | \\\`{{trigger.entityType}}\\\` | Entity type slug |
1264
+ | \\\`{{trigger.action}}\\\` | \\\`"created"\\\`, \\\`"updated"\\\`, or \\\`"deleted"\\\` |
1265
+ | \\\`{{trigger.data.X}}\\\` | Entity data field (e.g. \\\`{{trigger.data.email}}\\\`) |
1266
+ | \\\`{{trigger.previousData.X}}\\\` | Previous value (updates/deletes only) |
1267
+ | \\\`{{steps.NAME.X}}\\\` | Result from a prior action with \\\`as: "NAME"\\\` |
1268
+
1269
+ ### Conditions
1270
+
1271
+ Conditions use dot-notation path equality matching:
1272
+ \\\`\\\`\\\`typescript
1273
+ condition: {
1274
+ "data.status": "scheduled", // field must equal value
1275
+ "data.priority": "high" // all conditions must match (AND)
1276
+ }
1277
+ \\\`\\\`\\\`
1278
+
1279
+ ### Execution Model
1280
+
1281
+ - **Async**: Triggers are scheduled after the mutation, keeping writes fast
1282
+ - **System actor**: Actions execute with full admin access (not the user's role)
1283
+ - **Fail-fast**: If any action fails, remaining actions are skipped
1284
+ - **Events**: Emits \\\`trigger.executed\\\` on success, \\\`trigger.failed\\\` on error
1285
+ - **Both paths**: Triggers fire from dashboard CRUD, agent tool calls, and API mutations
1286
+
1287
+ ### Scaffold a new trigger
1288
+
1289
+ \\\`\\\`\\\`bash
1290
+ struere add trigger my-trigger
1291
+ \\\`\\\`\\\`
1292
+
1293
+ Creates \\\`triggers/my-trigger.ts\\\` with a starter template.
1294
+
1192
1295
  ## Built-in Tools Reference
1193
1296
 
1194
1297
  ### Entity Tools
@@ -1447,6 +1550,29 @@ Always confirm what was created/updated.\\\`,
1447
1550
  \`\`\`
1448
1551
  `;
1449
1552
  }
1553
+ function getTriggerTs(name, slug) {
1554
+ return `import { defineTrigger } from 'struere'
1555
+
1556
+ export default defineTrigger({
1557
+ name: "${name}",
1558
+ slug: "${slug}",
1559
+ on: {
1560
+ entityType: "ENTITY_TYPE_HERE",
1561
+ action: "created",
1562
+ },
1563
+ actions: [
1564
+ {
1565
+ tool: "event.emit",
1566
+ args: {
1567
+ eventType: "trigger.${slug}.fired",
1568
+ entityId: "{{trigger.entityId}}",
1569
+ payload: { triggeredBy: "${slug}" },
1570
+ },
1571
+ },
1572
+ ],
1573
+ })
1574
+ `;
1575
+ }
1450
1576
 
1451
1577
  // src/cli/utils/scaffold.ts
1452
1578
  function ensureDir(filePath) {
@@ -1470,7 +1596,8 @@ function scaffoldProjectV2(cwd, options) {
1470
1596
  "entity-types",
1471
1597
  "roles",
1472
1598
  "tools",
1473
- "evals"
1599
+ "evals",
1600
+ "triggers"
1474
1601
  ];
1475
1602
  for (const dir of directories) {
1476
1603
  const dirPath = join3(cwd, dir);
@@ -1490,6 +1617,7 @@ function scaffoldProjectV2(cwd, options) {
1490
1617
  "entity-types/index.ts": getIndexTs("entity-types"),
1491
1618
  "roles/index.ts": getIndexTs("roles"),
1492
1619
  "tools/index.ts": getToolsIndexTs(),
1620
+ "triggers/index.ts": getIndexTs("triggers"),
1493
1621
  "evals/basic-agent-tests.eval.yaml": getExampleEvalYaml("my-agent")
1494
1622
  };
1495
1623
  for (const [relativePath, content] of Object.entries(files)) {
@@ -1575,6 +1703,24 @@ function scaffoldEval(cwd, name, slug, agentSlug = "my-agent") {
1575
1703
  result.createdFiles.push(`evals/${fileName}`);
1576
1704
  return result;
1577
1705
  }
1706
+ function scaffoldTrigger(cwd, name, slug) {
1707
+ const result = {
1708
+ createdFiles: [],
1709
+ updatedFiles: []
1710
+ };
1711
+ const triggersDir = join3(cwd, "triggers");
1712
+ if (!existsSync3(triggersDir)) {
1713
+ mkdirSync2(triggersDir, { recursive: true });
1714
+ }
1715
+ const fileName = `${slug}.ts`;
1716
+ const filePath = join3(triggersDir, fileName);
1717
+ if (existsSync3(filePath)) {
1718
+ return result;
1719
+ }
1720
+ writeFileSync3(filePath, getTriggerTs(name, slug));
1721
+ result.createdFiles.push(`triggers/${fileName}`);
1722
+ return result;
1723
+ }
1578
1724
 
1579
1725
  // src/cli/commands/init.ts
1580
1726
  async function runInit(cwd, selectedOrg) {
@@ -1781,7 +1927,8 @@ async function loadAllResources(cwd) {
1781
1927
  }
1782
1928
  const { suites: evalSuites, errors: evalErrors } = loadAllEvalSuites(join4(cwd, "evals"));
1783
1929
  errors.push(...evalErrors);
1784
- return { agents, entityTypes, roles, customTools, evalSuites, errors };
1930
+ const triggers = await loadAllTriggers(join4(cwd, "triggers"));
1931
+ return { agents, entityTypes, roles, customTools, evalSuites, triggers, errors };
1785
1932
  }
1786
1933
  async function loadAllAgents(dir) {
1787
1934
  if (!existsSync4(dir)) {
@@ -1889,13 +2036,24 @@ function loadAllEvalSuites(dir) {
1889
2036
  }
1890
2037
  return { suites, errors };
1891
2038
  }
2039
+ async function loadAllTriggers(dir) {
2040
+ if (!existsSync4(dir)) {
2041
+ return [];
2042
+ }
2043
+ const indexPath = join4(dir, "index.ts");
2044
+ if (existsSync4(indexPath)) {
2045
+ return loadFromIndex(indexPath);
2046
+ }
2047
+ return loadFromDirectory(dir);
2048
+ }
1892
2049
  function getResourceDirectories(cwd) {
1893
2050
  return {
1894
2051
  agents: join4(cwd, "agents"),
1895
2052
  entityTypes: join4(cwd, "entity-types"),
1896
2053
  roles: join4(cwd, "roles"),
1897
2054
  tools: join4(cwd, "tools"),
1898
- evals: join4(cwd, "evals")
2055
+ evals: join4(cwd, "evals"),
2056
+ triggers: join4(cwd, "triggers")
1899
2057
  };
1900
2058
  }
1901
2059
 
@@ -1918,7 +2076,12 @@ var BUILTIN_TOOLS = [
1918
2076
  "event.emit",
1919
2077
  "event.query",
1920
2078
  "job.enqueue",
1921
- "job.status"
2079
+ "job.status",
2080
+ "calendar.list",
2081
+ "calendar.create",
2082
+ "calendar.update",
2083
+ "calendar.delete",
2084
+ "calendar.freeBusy"
1922
2085
  ];
1923
2086
  function extractSyncPayload(resources) {
1924
2087
  const customToolsMap = new Map;
@@ -1939,8 +2102,7 @@ function extractSyncPayload(resources) {
1939
2102
  policies: role.policies.map((p) => ({
1940
2103
  resource: p.resource,
1941
2104
  actions: p.actions,
1942
- effect: p.effect,
1943
- priority: p.priority
2105
+ effect: p.effect
1944
2106
  })),
1945
2107
  scopeRules: role.scopeRules?.map((sr) => ({
1946
2108
  entityType: sr.entityType,
@@ -1975,7 +2137,20 @@ function extractSyncPayload(resources) {
1975
2137
  finalAssertions: c.finalAssertions
1976
2138
  }))
1977
2139
  })) : undefined;
1978
- return { agents, entityTypes, roles, evalSuites };
2140
+ const triggers = resources.triggers.length > 0 ? resources.triggers.map((t) => ({
2141
+ name: t.name,
2142
+ slug: t.slug,
2143
+ description: t.description,
2144
+ entityType: t.on.entityType,
2145
+ action: t.on.action,
2146
+ condition: t.on.condition,
2147
+ actions: t.actions.map((a) => ({
2148
+ tool: a.tool,
2149
+ args: a.args,
2150
+ as: a.as
2151
+ }))
2152
+ })) : undefined;
2153
+ return { agents, entityTypes, roles, evalSuites, triggers };
1979
2154
  }
1980
2155
  function extractAgentPayload(agent, customToolsMap) {
1981
2156
  let systemPrompt;
@@ -2038,7 +2213,12 @@ function getBuiltinToolDescription(name) {
2038
2213
  "event.emit": "Emit a custom event for audit logging",
2039
2214
  "event.query": "Query historical events with optional filters",
2040
2215
  "job.enqueue": "Schedule a background job to run later",
2041
- "job.status": "Get the status of a scheduled job"
2216
+ "job.status": "Get the status of a scheduled job",
2217
+ "calendar.list": "List Google Calendar events for a user within a time range",
2218
+ "calendar.create": "Create a Google Calendar event on a user's calendar",
2219
+ "calendar.update": "Update an existing Google Calendar event",
2220
+ "calendar.delete": "Delete a Google Calendar event",
2221
+ "calendar.freeBusy": "Check free/busy availability on a user's Google Calendar"
2042
2222
  };
2043
2223
  return descriptions[name] || name;
2044
2224
  }
@@ -2144,6 +2324,60 @@ function getBuiltinToolParameters(name) {
2144
2324
  id: { type: "string", description: "The job ID to check" }
2145
2325
  },
2146
2326
  required: ["id"]
2327
+ },
2328
+ "calendar.list": {
2329
+ type: "object",
2330
+ properties: {
2331
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar to query" },
2332
+ timeMin: { type: "string", description: "Start of time range (ISO 8601 datetime)" },
2333
+ timeMax: { type: "string", description: "End of time range (ISO 8601 datetime)" },
2334
+ maxResults: { type: "number", description: "Maximum number of events to return" }
2335
+ },
2336
+ required: ["userId", "timeMin", "timeMax"]
2337
+ },
2338
+ "calendar.create": {
2339
+ type: "object",
2340
+ properties: {
2341
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar to create the event on" },
2342
+ summary: { type: "string", description: "Event title" },
2343
+ startTime: { type: "string", description: "Event start time (ISO 8601 datetime)" },
2344
+ endTime: { type: "string", description: "Event end time (ISO 8601 datetime)" },
2345
+ description: { type: "string", description: "Event description" },
2346
+ attendees: { type: "array", items: { type: "string" }, description: "List of attendee email addresses" },
2347
+ timeZone: { type: "string", description: 'Time zone (e.g., "America/Santiago")' }
2348
+ },
2349
+ required: ["userId", "summary", "startTime", "endTime"]
2350
+ },
2351
+ "calendar.update": {
2352
+ type: "object",
2353
+ properties: {
2354
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar contains the event" },
2355
+ eventId: { type: "string", description: "Google Calendar event ID to update" },
2356
+ summary: { type: "string", description: "New event title" },
2357
+ startTime: { type: "string", description: "New start time (ISO 8601 datetime)" },
2358
+ endTime: { type: "string", description: "New end time (ISO 8601 datetime)" },
2359
+ description: { type: "string", description: "New event description" },
2360
+ attendees: { type: "array", items: { type: "string" }, description: "Updated list of attendee emails" },
2361
+ status: { type: "string", description: "Event status (confirmed, tentative, cancelled)" }
2362
+ },
2363
+ required: ["userId", "eventId"]
2364
+ },
2365
+ "calendar.delete": {
2366
+ type: "object",
2367
+ properties: {
2368
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose calendar contains the event" },
2369
+ eventId: { type: "string", description: "Google Calendar event ID to delete" }
2370
+ },
2371
+ required: ["userId", "eventId"]
2372
+ },
2373
+ "calendar.freeBusy": {
2374
+ type: "object",
2375
+ properties: {
2376
+ userId: { type: "string", description: "User ID (Convex or Clerk) whose availability to check" },
2377
+ timeMin: { type: "string", description: "Start of time range (ISO 8601 datetime)" },
2378
+ timeMax: { type: "string", description: "End of time range (ISO 8601 datetime)" }
2379
+ },
2380
+ required: ["userId", "timeMin", "timeMax"]
2147
2381
  }
2148
2382
  };
2149
2383
  return schemas[name] || { type: "object", properties: {} };
@@ -2282,7 +2516,7 @@ var devCommand = new Command3("dev").description("Sync all resources to developm
2282
2516
  spinner.start("Loading resources");
2283
2517
  try {
2284
2518
  const resources = await loadAllResources(cwd);
2285
- spinner.succeed(`Loaded ${resources.agents.length} agents, ${resources.entityTypes.length} entity types, ${resources.roles.length} roles, ${resources.customTools.length} custom tools, ${resources.evalSuites.length} eval suites`);
2519
+ spinner.succeed(`Loaded ${resources.agents.length} agents, ${resources.entityTypes.length} entity types, ${resources.roles.length} roles, ${resources.customTools.length} custom tools, ${resources.evalSuites.length} eval suites, ${resources.triggers.length} triggers`);
2286
2520
  for (const err of resources.errors) {
2287
2521
  console.log(chalk3.red(" \u2716"), err);
2288
2522
  }
@@ -2341,6 +2575,7 @@ var devCommand = new Command3("dev").description("Sync all resources to developm
2341
2575
  dirs.roles,
2342
2576
  dirs.tools,
2343
2577
  dirs.evals,
2578
+ dirs.triggers,
2344
2579
  join5(cwd, "struere.config.ts")
2345
2580
  ].filter((p) => existsSync5(p));
2346
2581
  const watcher = chokidar.watch(watchPaths, {
@@ -3335,6 +3570,17 @@ var addCommand = new Command12("add").description("Scaffold a new resource").arg
3335
3570
  console.log(chalk12.yellow("Eval suite already exists:"), `evals/${slug}.eval.yaml`);
3336
3571
  }
3337
3572
  break;
3573
+ case "trigger":
3574
+ result = scaffoldTrigger(cwd, displayName, slug);
3575
+ if (result.createdFiles.length > 0) {
3576
+ console.log(chalk12.green("\u2713"), `Created trigger "${displayName}"`);
3577
+ for (const file of result.createdFiles) {
3578
+ console.log(chalk12.gray(" \u2192"), file);
3579
+ }
3580
+ } else {
3581
+ console.log(chalk12.yellow("Trigger already exists:"), `triggers/${slug}.ts`);
3582
+ }
3583
+ break;
3338
3584
  default:
3339
3585
  console.log(chalk12.red("Unknown resource type:"), type);
3340
3586
  console.log();
@@ -3343,6 +3589,7 @@ var addCommand = new Command12("add").description("Scaffold a new resource").arg
3343
3589
  console.log(chalk12.gray(" -"), chalk12.cyan("entity-type"), "- Create an entity type schema");
3344
3590
  console.log(chalk12.gray(" -"), chalk12.cyan("role"), "- Create a role with permissions");
3345
3591
  console.log(chalk12.gray(" -"), chalk12.cyan("eval"), "- Create an eval suite (YAML)");
3592
+ console.log(chalk12.gray(" -"), chalk12.cyan("trigger"), "- Create an entity trigger");
3346
3593
  console.log();
3347
3594
  process.exit(1);
3348
3595
  }
@@ -3628,9 +3875,6 @@ function generateRoleFile(role) {
3628
3875
  ` actions: ${JSON.stringify(p.actions)}`,
3629
3876
  ` effect: "${p.effect}"`
3630
3877
  ];
3631
- if (p.priority !== 50) {
3632
- pParts.push(` priority: ${p.priority}`);
3633
- }
3634
3878
  return ` {
3635
3879
  ${pParts.join(`,
3636
3880
  `)},
@@ -3907,7 +4151,7 @@ var pullCommand = new Command14("pull").description("Pull remote resources to lo
3907
4151
  // package.json
3908
4152
  var package_default = {
3909
4153
  name: "struere",
3910
- version: "0.5.14",
4154
+ version: "0.5.16",
3911
4155
  description: "Build, test, and deploy AI agents",
3912
4156
  keywords: [
3913
4157
  "ai",
@@ -13,10 +13,11 @@ export declare function getEnvLocal(deploymentUrl: string): string;
13
13
  export declare function getEntityTypeTs(name: string, slug: string): string;
14
14
  export declare function getRoleTs(name: string): string;
15
15
  export declare function getAgentTsV2(name: string, slug: string): string;
16
- export declare function getIndexTs(type: 'agents' | 'entity-types' | 'roles'): string;
16
+ export declare function getIndexTs(type: 'agents' | 'entity-types' | 'roles' | 'triggers'): string;
17
17
  export declare function getToolsIndexTs(): string;
18
18
  export declare function getStruereJsonV2(orgId: string, orgSlug: string, orgName: string): string;
19
19
  export declare function getPackageJsonV2(name: string): string;
20
20
  export declare function getClaudeMDV2(orgName: string): string;
21
+ export declare function getTriggerTs(name: string, slug: string): string;
21
22
  export declare function getClaudeMD(name: string): string;
22
23
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/templates/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuBnD;AAED,wBAAgB,WAAW,IAAI,MAAM,CAsBpC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAgBzC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgC/C;AAED,wBAAgB,UAAU,IAAI,MAAM,CAoDnC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAmBzC;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAwD5D;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAoB9F;AAED,wBAAgB,aAAa,IAAI,MAAM,CAatC;AAED,wBAAgB,YAAY,IAAI,MAAM,CAgBrC;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAahG;AAED,wBAAgB,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAGzD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA0BlE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa9C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAgC/D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,GAAG,MAAM,CAI5E;AAED,wBAAgB,eAAe,IAAI,MAAM,CAsExC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAaxF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuBrD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA4jBrD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA0UhD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/templates/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuBnD;AAED,wBAAgB,WAAW,IAAI,MAAM,CAsBpC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAgBzC;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgC/C;AAED,wBAAgB,UAAU,IAAI,MAAM,CAoDnC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAmBzC;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAwD5D;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAoB9F;AAED,wBAAgB,aAAa,IAAI,MAAM,CAatC;AAED,wBAAgB,YAAY,IAAI,MAAM,CAgBrC;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAahG;AAED,wBAAgB,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAGzD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CA0BlE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAa9C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAgC/D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAIzF;AAED,wBAAgB,eAAe,IAAI,MAAM,CAsExC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAaxF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAuBrD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAmqBrD;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAsB/D;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA0UhD"}
@@ -160,7 +160,6 @@ export interface SyncPayload {
160
160
  resource: string;
161
161
  actions: string[];
162
162
  effect: 'allow' | 'deny';
163
- priority?: number;
164
163
  }>;
165
164
  scopeRules?: Array<{
166
165
  entityType: string;
@@ -263,6 +262,12 @@ export interface SyncState {
263
262
  name: string;
264
263
  agentId: string;
265
264
  }>;
265
+ triggers?: Array<{
266
+ slug: string;
267
+ name: string;
268
+ entityType: string;
269
+ action: string;
270
+ }>;
266
271
  }
267
272
  export declare function getSyncState(organizationId?: string, environment?: 'development' | 'production'): Promise<{
268
273
  state?: SyncState;
@@ -302,7 +307,6 @@ export interface PullStateRole {
302
307
  resource: string;
303
308
  actions: string[];
304
309
  effect: string;
305
- priority: number;
306
310
  }>;
307
311
  scopeRules: Array<{
308
312
  entityType: string;
@@ -1 +1 @@
1
- {"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"AAIA,UAAU,WAAW;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAA;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,EAAE,OAAO,CAAA;QACnB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,EAAE,OAAO,CAAA;KACnB,CAAC,CAAA;CACH;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,eAAe,CAAC,CA+B1B;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA6BnF;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA4B3I;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAA;QACV,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;IACD,aAAa,EAAE,OAAO,EAAE,CAAA;CACzB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,aAAa,EAAE,OAAO,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoB9G;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwDjG;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACvD,KAAK,CAAC,EAAE;QACN,QAAQ,CAAC,EAAE,MAAM,CAAA;QACjB,IAAI,CAAC,EAAE,MAAM,CAAA;QACb,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,KAAK,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,WAAW,EAAE,MAAM,CAAA;QACnB,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,OAAO,CAAC,EAAE,QAAQ,CAAA;KACnB,CAAC,CAAA;CACH,GAAG,WAAW,CAuDd;AAsBD,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,wBAAsB,mBAAmB,CAAC,KAAK,GAAE,MAAY,GAAG,OAAO,CAAC;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA4BnH;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE;QACN,GAAG,EAAE,MAAM,CAAA;QACX,OAAO,EAAE,MAAM,CAAA;QACf,SAAS,EAAE,MAAM,CAAA;QACjB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,QAAQ,EAAE,KAAK,CAAC;QACd,GAAG,EAAE,MAAM,CAAA;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,SAAS,EAAE,MAAM,CAAA;KAClB,CAAC,CAAA;CACH;AAED,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgCvG;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE,MAAM,CAAA;QACZ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACnC,MAAM,EAAE,OAAO,CAAA;KAChB,CAAC,CAAA;CACH;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuCzE;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,YAAY,EAAE,MAAM,CAAA;QACpB,KAAK,EAAE;YACL,QAAQ,EAAE,MAAM,CAAA;YAChB,IAAI,EAAE,MAAM,CAAA;YACZ,WAAW,CAAC,EAAE,MAAM,CAAA;YACpB,SAAS,CAAC,EAAE,MAAM,CAAA;SACnB,CAAA;QACD,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAA;YACZ,WAAW,EAAE,MAAM,CAAA;YACnB,UAAU,EAAE,OAAO,CAAA;YACnB,WAAW,CAAC,EAAE,MAAM,CAAA;YACpB,SAAS,EAAE,OAAO,CAAA;SACnB,CAAC,CAAA;KACH,CAAC,CAAA;IACF,WAAW,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,OAAO,CAAA;QACf,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;QACvB,aAAa,CAAC,EAAE,OAAO,CAAA;KACxB,CAAC,CAAA;IACF,KAAK,EAAE,KAAK,CAAC;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,QAAQ,EAAE,KAAK,CAAC;YACd,QAAQ,EAAE,MAAM,CAAA;YAChB,OAAO,EAAE,MAAM,EAAE,CAAA;YACjB,MAAM,EAAE,OAAO,GAAG,MAAM,CAAA;YACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;SAClB,CAAC,CAAA;QACF,UAAU,CAAC,EAAE,KAAK,CAAC;YACjB,UAAU,EAAE,MAAM,CAAA;YAClB,KAAK,EAAE,MAAM,CAAA;YACb,QAAQ,EAAE,MAAM,CAAA;YAChB,KAAK,EAAE,MAAM,CAAA;SACd,CAAC,CAAA;QACF,UAAU,CAAC,EAAE,KAAK,CAAC;YACjB,UAAU,EAAE,MAAM,CAAA;YAClB,SAAS,EAAE,MAAM,CAAA;YACjB,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;YAC3B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;SACrC,CAAC,CAAA;KACH,CAAC,CAAA;IACF,UAAU,CAAC,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,SAAS,EAAE,MAAM,CAAA;QACjB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;QACf,UAAU,CAAC,EAAE;YACX,QAAQ,EAAE,MAAM,CAAA;YAChB,IAAI,EAAE,MAAM,CAAA;SACb,CAAA;QACD,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,KAAK,EAAE,KAAK,CAAC;YACX,IAAI,EAAE,MAAM,CAAA;YACZ,WAAW,CAAC,EAAE,MAAM,CAAA;YACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;YACf,KAAK,EAAE,KAAK,CAAC;gBACX,WAAW,EAAE,MAAM,CAAA;gBACnB,UAAU,CAAC,EAAE,KAAK,CAAC;oBACjB,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,iBAAiB,CAAA;oBAC9E,QAAQ,CAAC,EAAE,MAAM,CAAA;oBACjB,KAAK,CAAC,EAAE,MAAM,CAAA;oBACd,MAAM,CAAC,EAAE,MAAM,CAAA;iBAChB,CAAC,CAAA;aACH,CAAC,CAAA;YACF,eAAe,CAAC,EAAE,KAAK,CAAC;gBACtB,IAAI,EAAE,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,iBAAiB,CAAA;gBAC9E,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,KAAK,CAAC,EAAE,MAAM,CAAA;gBACd,MAAM,CAAC,EAAE,MAAM,CAAA;aAChB,CAAC,CAAA;SACH,CAAC,CAAA;KACH,CAAC,CAAA;CACH;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC/F,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IACzF,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC1F,UAAU,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,aAAa,GAAG,YAAY,CAAA;IACzC,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC;AAED,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAqDhF;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAClF,WAAW,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAClD,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACnD,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACpE;AAED,wBAAsB,YAAY,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,aAAa,GAAG,YAAY,GAAG,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAqCtJ;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACnF,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CACnH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1F,UAAU,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACzF,UAAU,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAA;CACrH;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,cAAc,EAAE,CAAA;IACxB,WAAW,EAAE,mBAAmB,EAAE,CAAA;IAClC,KAAK,EAAE,aAAa,EAAE,CAAA;CACvB;AAED,wBAAsB,YAAY,CAChC,cAAc,CAAC,EAAE,MAAM,EACvB,WAAW,GAAE,aAAa,GAAG,YAA4B,GACxD,OAAO,CAAC;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAqChD"}
1
+ {"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,6 @@ export interface SyncPayload {
34
34
  resource: string;
35
35
  actions: string[];
36
36
  effect: 'allow' | 'deny';
37
- priority?: number;
38
37
  }>;
39
38
  scopeRules?: Array<{
40
39
  entityType: string;
@@ -82,6 +81,19 @@ export interface SyncPayload {
82
81
  }>;
83
82
  }>;
84
83
  }>;
84
+ triggers?: Array<{
85
+ name: string;
86
+ slug: string;
87
+ description?: string;
88
+ entityType: string;
89
+ action: string;
90
+ condition?: Record<string, unknown>;
91
+ actions: Array<{
92
+ tool: string;
93
+ args: Record<string, unknown>;
94
+ as?: string;
95
+ }>;
96
+ }>;
85
97
  }
86
98
  export declare function extractSyncPayload(resources: LoadedResources): SyncPayload;
87
99
  //# sourceMappingURL=extractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extractor.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/extractor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AA4ClF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAmC/D;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM,CAqB9E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAyD5D;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CA8BnE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAWpG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,EAAE,CAiBzE"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AA4ClF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,CAmC/D;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,mBAAmB,GAAG,MAAM,CAqB9E;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAsD5D;AAED,UAAU,UAAU;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,OAAO,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,MAAM,CA8BnE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAWpG;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,EAAE,CAiBzE"}
@@ -1,10 +1,11 @@
1
- import type { AgentConfigV2, EntityTypeConfig, RoleConfig, ToolReference, EvalSuiteDefinition } from '../../types';
1
+ import type { AgentConfigV2, EntityTypeConfig, RoleConfig, ToolReference, EvalSuiteDefinition, TriggerConfig } from '../../types';
2
2
  export interface LoadedResources {
3
3
  agents: AgentConfigV2[];
4
4
  entityTypes: EntityTypeConfig[];
5
5
  roles: RoleConfig[];
6
6
  customTools: ToolReference[];
7
7
  evalSuites: EvalSuiteDefinition[];
8
+ triggers: TriggerConfig[];
8
9
  errors: string[];
9
10
  }
10
11
  export declare function loadAllResources(cwd: string): Promise<LoadedResources>;
@@ -19,12 +20,14 @@ export declare function loadAllEvalSuites(dir: string): {
19
20
  suites: EvalSuiteDefinition[];
20
21
  errors: string[];
21
22
  };
23
+ export declare function loadAllTriggers(dir: string): Promise<TriggerConfig[]>;
22
24
  export declare function getResourceDirectories(cwd: string): {
23
25
  agents: string;
24
26
  entityTypes: string;
25
27
  roles: string;
26
28
  tools: string;
27
29
  evals: string;
30
+ triggers: string;
28
31
  };
29
32
  export declare function hasResourceDirectories(cwd: string): boolean;
30
33
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAElH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,WAAW,EAAE,gBAAgB,EAAE,CAAA;IAC/B,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,UAAU,EAAE,mBAAmB,EAAE,CAAA;IACjC,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAa5E;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAWzE;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAWjF;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAWrE;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuBtG;AA+CD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAuBlG;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG;IACnD,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;CACd,CAQA;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAG3D"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/loader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEjI,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,aAAa,EAAE,CAAA;IACvB,WAAW,EAAE,gBAAgB,EAAE,CAAA;IAC/B,KAAK,EAAE,UAAU,EAAE,CAAA;IACnB,WAAW,EAAE,aAAa,EAAE,CAAA;IAC5B,UAAU,EAAE,mBAAmB,EAAE,CAAA;IACjC,QAAQ,EAAE,aAAa,EAAE,CAAA;IACzB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,wBAAsB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAc5E;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAWzE;AAED,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAWjF;AAED,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAWrE;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuBtG;AA+CD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAuBlG;AAED,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAW3E;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG;IACnD,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;CACjB,CASA;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAG3D"}
@@ -25,5 +25,6 @@ export declare function scaffoldAgent(cwd: string, name: string, slug: string):
25
25
  export declare function scaffoldEntityType(cwd: string, name: string, slug: string): ScaffoldResult;
26
26
  export declare function scaffoldRole(cwd: string, name: string): ScaffoldResult;
27
27
  export declare function scaffoldEval(cwd: string, name: string, slug: string, agentSlug?: string): ScaffoldResult;
28
+ export declare function scaffoldTrigger(cwd: string, name: string, slug: string): ScaffoldResult;
28
29
  export declare function hasV2Structure(cwd: string): boolean;
29
30
  //# sourceMappingURL=scaffold.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/scaffold.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAeD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,cAAc,CAexF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,cAAc,CA+BrF;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,CA8BnF;AAsBD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CA8CzF;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsBrF;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsB1F;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsBtE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAmB,GAAG,cAAc,CA2BpH;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAInD"}
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/scaffold.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,YAAY,EAAE,MAAM,EAAE,CAAA;CACvB;AAeD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,cAAc,CAexF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,cAAc,CA+BrF;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,cAAc,CA8BnF;AAsBD,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,cAAc,CAgDzF;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsBrF;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsB1F;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsBtE;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,GAAE,MAAmB,GAAG,cAAc,CA2BpH;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,cAAc,CAsBvF;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAInD"}
@@ -1 +1 @@
1
- {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/define/role.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAE1C,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CA6BzD"}
1
+ {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/define/role.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAE1C,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAyBzD"}
@@ -0,0 +1,3 @@
1
+ import type { TriggerConfig } from '../types';
2
+ export declare function defineTrigger(config: TriggerConfig): TriggerConfig;
3
+ //# sourceMappingURL=trigger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trigger.d.ts","sourceRoot":"","sources":["../../src/define/trigger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAI7C,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CA8BlE"}
package/dist/index.d.ts CHANGED
@@ -3,5 +3,6 @@ export { defineTools } from './define/tools';
3
3
  export { defineConfig } from './define/config';
4
4
  export { defineEntityType } from './define/entityType';
5
5
  export { defineRole } from './define/role';
6
- export type { AgentConfig, ModelConfig, ToolReference, ToolParameters, ParameterDefinition, ToolHandler, ToolContext, StateAccessor, WorkflowReference, StateConfig, FrameworkConfig, CorsConfig, LoggingConfig, AuthConfig, Message, Conversation, TestCase, TestMessage, TestToolCall, TestAssertion, DeployConfig, ScalingConfig, EntityTypeConfig, JSONSchema, JSONSchemaProperty, RoleConfig, PolicyConfig, ScopeRuleConfig, FieldMaskConfig, StruereProjectV2, AgentConfigV2, SyncPayload, SyncState, } from './types';
6
+ export { defineTrigger } from './define/trigger';
7
+ export type { AgentConfig, ModelConfig, ToolReference, ToolParameters, ParameterDefinition, ToolHandler, ToolContext, StateAccessor, WorkflowReference, StateConfig, FrameworkConfig, CorsConfig, LoggingConfig, AuthConfig, Message, Conversation, TestCase, TestMessage, TestToolCall, TestAssertion, DeployConfig, ScalingConfig, EntityTypeConfig, JSONSchema, JSONSchemaProperty, RoleConfig, PolicyConfig, ScopeRuleConfig, FieldMaskConfig, StruereProjectV2, AgentConfigV2, SyncPayload, SyncState, TriggerConfig, TriggerAction, } from './types';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAE1C,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,UAAU,EACV,aAAa,EACb,UAAU,EACV,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,SAAS,GACV,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,YAAY,EACV,WAAW,EACX,WAAW,EACX,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,WAAW,EACX,eAAe,EACf,UAAU,EACV,aAAa,EACb,UAAU,EACV,OAAO,EACP,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,SAAS,CAAA"}
package/dist/index.js CHANGED
@@ -138,15 +138,43 @@ function defineRole(config) {
138
138
  }
139
139
  return {
140
140
  ...config,
141
- policies: config.policies.map((policy, index) => ({
142
- ...policy,
143
- priority: policy.priority ?? (index + 1) * 10
144
- })),
145
141
  scopeRules: config.scopeRules || [],
146
142
  fieldMasks: config.fieldMasks || []
147
143
  };
148
144
  }
145
+ // src/define/trigger.ts
146
+ var VALID_ACTIONS = ["created", "updated", "deleted"];
147
+ function defineTrigger(config) {
148
+ if (!config.name) {
149
+ throw new Error("Trigger name is required");
150
+ }
151
+ if (!config.slug) {
152
+ throw new Error("Trigger slug is required");
153
+ }
154
+ if (!config.on) {
155
+ throw new Error('Trigger "on" configuration is required');
156
+ }
157
+ if (!config.on.entityType) {
158
+ throw new Error("Trigger entityType is required");
159
+ }
160
+ if (!config.on.action || !VALID_ACTIONS.includes(config.on.action)) {
161
+ throw new Error(`Trigger action must be one of: ${VALID_ACTIONS.join(", ")}`);
162
+ }
163
+ if (!config.actions || config.actions.length === 0) {
164
+ throw new Error("Trigger must have at least one action");
165
+ }
166
+ for (const action of config.actions) {
167
+ if (!action.tool) {
168
+ throw new Error("Trigger action tool is required");
169
+ }
170
+ if (!action.args || typeof action.args !== "object") {
171
+ throw new Error("Trigger action args must be an object");
172
+ }
173
+ }
174
+ return config;
175
+ }
149
176
  export {
177
+ defineTrigger,
150
178
  defineTools,
151
179
  defineRole,
152
180
  defineEntityType,
package/dist/types.d.ts CHANGED
@@ -215,7 +215,6 @@ export interface PolicyConfig {
215
215
  resource: string;
216
216
  actions: string[];
217
217
  effect: 'allow' | 'deny';
218
- priority?: number;
219
218
  }
220
219
  export interface ScopeRuleConfig {
221
220
  entityType: string;
@@ -246,11 +245,28 @@ export interface AgentConfigV2 {
246
245
  model?: ModelConfig;
247
246
  tools?: string[];
248
247
  }
248
+ export interface TriggerAction {
249
+ tool: string;
250
+ args: Record<string, unknown>;
251
+ as?: string;
252
+ }
253
+ export interface TriggerConfig {
254
+ name: string;
255
+ slug: string;
256
+ description?: string;
257
+ on: {
258
+ entityType: string;
259
+ action: 'created' | 'updated' | 'deleted';
260
+ condition?: Record<string, unknown>;
261
+ };
262
+ actions: TriggerAction[];
263
+ }
249
264
  export interface SyncPayload {
250
265
  agents: AgentConfigV2[];
251
266
  entityTypes: EntityTypeConfig[];
252
267
  roles: RoleConfig[];
253
268
  customTools?: ToolReference[];
269
+ triggers?: TriggerConfig[];
254
270
  }
255
271
  export interface SyncState {
256
272
  agents: Array<{
@@ -268,5 +284,11 @@ export interface SyncState {
268
284
  name: string;
269
285
  policyCount: number;
270
286
  }>;
287
+ triggers?: Array<{
288
+ slug: string;
289
+ name: string;
290
+ entityType: string;
291
+ action: string;
292
+ }>;
271
293
  }
272
294
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "struere",
3
- "version": "0.5.14",
3
+ "version": "0.5.16",
4
4
  "description": "Build, test, and deploy AI agents",
5
5
  "keywords": [
6
6
  "ai",