struere 0.10.2 → 0.10.4

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.
@@ -540,7 +540,8 @@ async function runTool(options) {
540
540
  agentId: agentResult.value._id,
541
541
  environment: options.environment,
542
542
  toolName: options.toolName,
543
- toolArgs: options.toolArgs
543
+ toolArgs: options.toolArgs,
544
+ organizationId: options.organizationId
544
545
  }
545
546
  }),
546
547
  signal: AbortSignal.timeout(30000)
@@ -1831,7 +1832,12 @@ function getResourceDirectories(cwd) {
1831
1832
  }
1832
1833
 
1833
1834
  // src/cli/commands/docs.ts
1834
- var DOCS_BASE = "https://docs.struere.dev";
1835
+ var TEMPLATE_URL = "https://docs.struere.dev/llms-workspace.txt";
1836
+ var FALLBACK_TEMPLATE = `# Struere Workspace
1837
+
1838
+ > Run \`struere docs\` with internet access to generate full documentation.
1839
+
1840
+ {{PROJECT_CONTEXT}}`;
1835
1841
  var ALL_TARGETS = ["claude", "cursor", "copilot"];
1836
1842
  var TARGET_FILES = {
1837
1843
  claude: "CLAUDE.md",
@@ -1885,222 +1891,18 @@ function buildProjectContext(orgName, resources) {
1885
1891
  return lines.join(`
1886
1892
  `);
1887
1893
  }
1888
- function buildDocument(projectContext) {
1889
- const lines = [];
1890
- lines.push(`# Struere Workspace`);
1891
- lines.push("");
1892
- lines.push(`> This is a Struere workspace project. You define agents, data types, roles, triggers, and custom tools here. The CLI syncs them to the Convex backend.`);
1893
- lines.push("");
1894
- lines.push(`## Agent Usage`);
1895
- lines.push("");
1896
- lines.push("If you are an AI coding agent (Claude Code, Cursor, Copilot, etc.), use these patterns:");
1897
- lines.push("");
1898
- lines.push("**Auth**: Set `STRUERE_API_KEY` environment variable (no browser login needed)");
1899
- lines.push("");
1900
- lines.push("**Sync**: Use `struere sync` instead of `struere dev` \u2014 it syncs once and exits (no watch loop)");
1901
- lines.push("```bash");
1902
- lines.push("struere sync # sync to development + eval, then exit");
1903
- lines.push("struere sync --json # machine-readable JSON output");
1904
- lines.push("struere sync --env production # sync to production");
1905
- lines.push("struere sync --force # skip deletion confirmations");
1906
- lines.push("```");
1907
- lines.push("");
1908
- lines.push("**Deploy**: `struere deploy --force` skips confirmation prompts");
1909
- lines.push("");
1910
- lines.push("**JSON output**: Most commands support `--json` for structured output:");
1911
- lines.push("```bash");
1912
- lines.push("struere data list <type> --json");
1913
- lines.push("struere status --json");
1914
- lines.push("struere deploy --json --force");
1915
- lines.push("```");
1916
- lines.push("");
1917
- lines.push("**Non-interactive mode** is auto-detected when `STRUERE_API_KEY` is set or stdout is not a TTY. In this mode, all confirmation prompts are auto-accepted and spinners are replaced with plain text.");
1918
- lines.push("");
1919
- lines.push("**Exit codes**: All commands exit `0` on success, `1` on error. Check `$?` after execution.");
1920
- lines.push("");
1921
- if (projectContext) {
1922
- lines.push(projectContext);
1923
- lines.push("");
1894
+ async function fetchTemplate() {
1895
+ try {
1896
+ const controller = new AbortController;
1897
+ const timeout = setTimeout(() => controller.abort(), 5000);
1898
+ const response = await fetch(TEMPLATE_URL, { signal: controller.signal });
1899
+ clearTimeout(timeout);
1900
+ if (!response.ok)
1901
+ throw new Error(`HTTP ${response.status}`);
1902
+ return await response.text();
1903
+ } catch {
1904
+ return FALLBACK_TEMPLATE;
1924
1905
  }
1925
- lines.push(`## Project Structure`);
1926
- lines.push("");
1927
- lines.push("```");
1928
- lines.push("agents/ # Agent definitions (one file per agent)");
1929
- lines.push("entity-types/ # Data type schemas (like DB tables)");
1930
- lines.push("roles/ # RBAC roles with policies, scope rules, field masks");
1931
- lines.push("triggers/ # Automation rules (react to entity changes)");
1932
- lines.push("tools/index.ts # Custom tools shared by all agents");
1933
- lines.push("evals/*.eval.yaml # Test suites for agent evaluation");
1934
- lines.push("fixtures/*.fixture.yaml # Test data for eval environment");
1935
- lines.push("struere.json # Organization config (auto-generated)");
1936
- lines.push("```");
1937
- lines.push("");
1938
- lines.push(`## CLI Commands`);
1939
- lines.push("");
1940
- lines.push("| Command | Description |");
1941
- lines.push("|---------|-------------|");
1942
- lines.push("| `struere sync` | One-shot sync to Convex and exit (agent-friendly) |");
1943
- lines.push("| `struere dev` | Watch files and sync to Convex on save |");
1944
- lines.push("| `struere deploy` | Push development config to production |");
1945
- lines.push("| `struere add agent\\|data-type\\|role\\|trigger\\|eval\\|fixture <name>` | Scaffold a new resource |");
1946
- lines.push("| `struere status` | Compare local vs remote state |");
1947
- lines.push("| `struere pull` | Download remote resources to local files |");
1948
- lines.push("| `struere data types` | List data types in an environment |");
1949
- lines.push("| `struere data list <type>` | List records (supports `--status`, `--limit`, `--json`) |");
1950
- lines.push("| `struere data get <id>` | Get record details |");
1951
- lines.push("| `struere data create <type>` | Create record (interactive or `--data <json>`) |");
1952
- lines.push("| `struere data update <id>` | Update record (`--data <json>`, `--status`) |");
1953
- lines.push("| `struere data delete <id>` | Delete record (with confirmation) |");
1954
- lines.push("| `struere data search <type> <query>` | Search records by text |");
1955
- lines.push("| `struere eval run <suite>` | Run an eval suite and write Markdown results |");
1956
- lines.push("| `struere eval run <suite> --case <name>` | Run specific case(s) by name |");
1957
- lines.push("| `struere eval run <suite> --tag <tag>` | Run cases matching a tag |");
1958
- lines.push("| `struere templates list` | List WhatsApp message templates |");
1959
- lines.push("| `struere templates create <name>` | Create a template (`--components <json>` or `--file <path>`) |");
1960
- lines.push("| `struere templates delete <name>` | Delete a template (with confirmation) |");
1961
- lines.push("| `struere templates status <name>` | Check template approval status |");
1962
- lines.push("| `struere docs` | Regenerate this file |");
1963
- lines.push("");
1964
- lines.push(`## Key Patterns`);
1965
- lines.push("");
1966
- lines.push("- **Imports**: `import { defineAgent, defineData, defineRole, defineTrigger, defineTools } from 'struere'`");
1967
- lines.push("- **Default model**: `grok-4-1-fast` (provider: `xai`). Also supports `anthropic`, `openai` and `google`");
1968
- lines.push("- **Scope rule values**: `actor.userId`, `actor.entityId`, `actor.organizationId`, `actor.relatedIds:TYPE`, `literal:VALUE`");
1969
- lines.push("- **Policy actions**: `create`, `read`, `update`, `delete`, `list` (deny overrides allow)");
1970
- lines.push("- **Entity link/unlink params**: `fromId`, `toId`, `relationType`");
1971
- lines.push("- **Trigger template vars**: `{{trigger.entityId}}`, `{{trigger.data.X}}`, `{{steps.NAME.X}}`");
1972
- lines.push("");
1973
- lines.push(`## Dynamic System Prompts`);
1974
- lines.push("");
1975
- lines.push("System prompts are **not static strings** \u2014 they are templates evaluated at runtime before every LLM call. This is one of the most powerful features in Struere because it enables completely different agent behavior depending on conditions, live data, and even other agents' responses.");
1976
- lines.push("");
1977
- lines.push("### Template Variables");
1978
- lines.push("Simple variable substitution: `{{agentName}}`, `{{organizationName}}`, `{{currentTime}}`, `{{entityTypes}}`, `{{roles}}`, `{{message}}`, `{{thread.metadata.X}}`");
1979
- lines.push("");
1980
- lines.push("### Embedded Queries (Function Calls)");
1981
- lines.push("Pull live data from the database directly into the system prompt:");
1982
- lines.push("```");
1983
- lines.push('{{entity.query({"type": "customer", "limit": 5})}}');
1984
- lines.push('{{entity.get({"id": "ent_123"})}}');
1985
- lines.push("```");
1986
- lines.push("This means the agent always sees the latest data \u2014 no stale context.");
1987
- lines.push("");
1988
- lines.push("### Custom Tools in Prompts");
1989
- lines.push("Since custom tools can run arbitrary logic, you can create tools specifically to generate dynamic prompt sections. A custom tool can fetch external APIs, compute conditions, aggregate data, or format context \u2014 and its output gets embedded into the system prompt at runtime.");
1990
- lines.push("");
1991
- lines.push("### Agent-to-Agent in Prompts");
1992
- lines.push('You can even use `agent.chat` in the template to have another agent\'s response injected into the system prompt. This enables patterns like a "context agent" that summarizes relevant info before the main agent starts reasoning.');
1993
- lines.push("");
1994
- lines.push(`For full template syntax: [System Prompt Templates](${DOCS_BASE}/tools/system-prompt-templates.md)`);
1995
- lines.push("");
1996
- lines.push(`## WhatsApp Template Management`);
1997
- lines.push("");
1998
- lines.push("WhatsApp message templates are required for outbound messages outside the 24-hour messaging window. Struere supports full template lifecycle management.");
1999
- lines.push("");
2000
- lines.push("### Template Actions");
2001
- lines.push("");
2002
- lines.push("| Action | Description |");
2003
- lines.push("|--------|-------------|");
2004
- lines.push("| `whatsappActions.listTemplates` | List all templates for a connection |");
2005
- lines.push("| `whatsappActions.createTemplate` | Create a new template on Meta |");
2006
- lines.push("| `whatsappActions.deleteTemplate` | Delete a template from Meta |");
2007
- lines.push("| `whatsappActions.getTemplateStatus` | Check approval status of a template |");
2008
- lines.push("");
2009
- lines.push("### Template Categories");
2010
- lines.push("");
2011
- lines.push("- **UTILITY**: transactional updates (order confirmations, reminders)");
2012
- lines.push("- **MARKETING**: promotional content");
2013
- lines.push("- **AUTHENTICATION**: OTP/verification codes");
2014
- lines.push("");
2015
- lines.push("### Template Components");
2016
- lines.push("");
2017
- lines.push("- **HEADER** (optional): TEXT, IMAGE, VIDEO, or DOCUMENT");
2018
- lines.push("- **BODY** (required): main message text with `{{named_params}}` or `{{1}}` positional");
2019
- lines.push("- **FOOTER** (optional): short text, no variables");
2020
- lines.push("- **BUTTONS** (optional): QUICK_REPLY, URL, PHONE_NUMBER (do not interleave QUICK_REPLY with URL/PHONE_NUMBER)");
2021
- lines.push("");
2022
- lines.push('Use `parameter_format: "NAMED"` with `{{param_name}}` variables (recommended over positional). Include examples when variables appear in HEADER or BODY.');
2023
- lines.push("");
2024
- lines.push("### Status Flow");
2025
- lines.push("");
2026
- lines.push("`PENDING` \u2192 `APPROVED` | `REJECTED` | `PAUSED`");
2027
- lines.push("");
2028
- lines.push(`For details: [WhatsApp Integration](${DOCS_BASE}/integrations/whatsapp.md)`);
2029
- lines.push("");
2030
- lines.push(`## Multi-Agent Communication (agent.chat)`);
2031
- lines.push("");
2032
- lines.push("The `agent.chat` tool lets agents delegate work to other agents. This is a core building block for complex systems:");
2033
- lines.push("");
2034
- lines.push("- **Orchestrator pattern**: A coordinator agent routes tasks to specialist agents based on the request");
2035
- lines.push("- **Trigger actions**: Use `agent.chat` inside trigger action pipelines to have an agent reason about entity changes");
2036
- lines.push("- **Chained delegation**: Agents can call other agents up to 3 levels deep (A\u2192B\u2192C), with cycle detection");
2037
- lines.push("- **Isolated execution**: Each agent runs its own LLM loop with its own system prompt, tools, and permissions");
2038
- lines.push("");
2039
- lines.push("```typescript");
2040
- lines.push("// Orchestrator that delegates to specialists");
2041
- lines.push('tools: ["agent.chat", "entity.query"]');
2042
- lines.push("// In trigger actions:");
2043
- lines.push('{ tool: "agent.chat", args: { agent: "billing-agent", message: "Process refund for {{trigger.data.orderId}}" } }');
2044
- lines.push("```");
2045
- lines.push("");
2046
- lines.push(`For details: [Agents](${DOCS_BASE}/platform/agents.md)`);
2047
- lines.push("");
2048
- lines.push(`## Best Practices`);
2049
- lines.push("");
2050
- lines.push("- **Keep tools under 10 per agent.** Agents perform significantly worse when they have too many tools to choose from. If an agent needs more, split it into specialist agents and use `agent.chat` to orchestrate");
2051
- lines.push("- **Always ask the user before making assumptions.** The user may not be technical \u2014 help them accomplish what they want by asking the right questions and offering clear options");
2052
- lines.push("- **Always check the documentation before making changes.** Fetch the relevant doc link below to verify the correct API, field names, and patterns. Do not guess \u2014 wrong field names or patterns will cause silent failures");
2053
- lines.push("- **Use `struere sync` to validate changes.** Run after editing files to sync to Convex. Use `struere dev` for continuous watch mode during manual development");
2054
- lines.push("- **Test with evals.** Write eval suites to catch regressions in agent behavior (`struere add eval <name>`)");
2055
- lines.push("");
2056
- lines.push(`## Documentation`);
2057
- lines.push("");
2058
- lines.push(`Fetch these URLs for detailed documentation on each topic:`);
2059
- lines.push("");
2060
- lines.push("### SDK");
2061
- lines.push(`- [SDK Overview](${DOCS_BASE}/sdk/overview.md)`);
2062
- lines.push(`- [defineAgent](${DOCS_BASE}/sdk/define-agent.md)`);
2063
- lines.push(`- [defineData](${DOCS_BASE}/sdk/define-data.md)`);
2064
- lines.push(`- [defineRole](${DOCS_BASE}/sdk/define-role.md)`);
2065
- lines.push(`- [defineTrigger](${DOCS_BASE}/sdk/define-trigger.md)`);
2066
- lines.push(`- [defineTools](${DOCS_BASE}/sdk/define-tools.md)`);
2067
- lines.push("");
2068
- lines.push("### Tools");
2069
- lines.push(`- [Built-in Tools](${DOCS_BASE}/tools/built-in-tools.md)`);
2070
- lines.push(`- [Custom Tools](${DOCS_BASE}/tools/custom-tools.md)`);
2071
- lines.push(`- [System Prompt Templates](${DOCS_BASE}/tools/system-prompt-templates.md)`);
2072
- lines.push("");
2073
- lines.push("### Platform");
2074
- lines.push(`- [Data](${DOCS_BASE}/platform/data.md)`);
2075
- lines.push(`- [Permissions](${DOCS_BASE}/platform/permissions.md)`);
2076
- lines.push(`- [Agents](${DOCS_BASE}/platform/agents.md)`);
2077
- lines.push(`- [Events](${DOCS_BASE}/platform/events.md)`);
2078
- lines.push(`- [Triggers](${DOCS_BASE}/platform/triggers.md)`);
2079
- lines.push(`- [Environment Isolation](${DOCS_BASE}/platform/environment-isolation.md)`);
2080
- lines.push(`- [Evaluations](${DOCS_BASE}/platform/evals.md)`);
2081
- lines.push("");
2082
- lines.push("### CLI");
2083
- lines.push(`- [CLI Overview](${DOCS_BASE}/cli/overview.md)`);
2084
- lines.push(`- [struere init](${DOCS_BASE}/cli/init.md)`);
2085
- lines.push(`- [struere sync](${DOCS_BASE}/cli/sync.md)`);
2086
- lines.push(`- [struere dev](${DOCS_BASE}/cli/dev.md)`);
2087
- lines.push(`- [struere add](${DOCS_BASE}/cli/add.md)`);
2088
- lines.push(`- [struere deploy](${DOCS_BASE}/cli/deploy.md)`);
2089
- lines.push(`- [struere eval run](${DOCS_BASE}/cli/eval.md)`);
2090
- lines.push(`- [struere templates](${DOCS_BASE}/cli/templates.md)`);
2091
- lines.push("");
2092
- lines.push("### API & Integrations");
2093
- lines.push(`- [Chat API](${DOCS_BASE}/api/chat.md)`);
2094
- lines.push(`- [Webhooks](${DOCS_BASE}/api/webhooks.md)`);
2095
- lines.push(`- [WhatsApp Integration](${DOCS_BASE}/integrations/whatsapp.md)`);
2096
- lines.push("");
2097
- lines.push("### Reference");
2098
- lines.push(`- [Project Structure](${DOCS_BASE}/reference/project-structure.md)`);
2099
- lines.push(`- [Model Configuration](${DOCS_BASE}/reference/model-configuration.md)`);
2100
- lines.push("");
2101
- lines.push(`Full docs: ${DOCS_BASE}/llms-full.txt`);
2102
- return lines.join(`
2103
- `);
2104
1906
  }
2105
1907
  function writeTarget(cwd, target, content) {
2106
1908
  const filePath = join6(cwd, TARGET_FILES[target]);
@@ -2131,7 +1933,8 @@ async function generateDocs(cwd, targets) {
2131
1933
  });
2132
1934
  }
2133
1935
  }
2134
- const content = buildDocument(projectContext);
1936
+ const template = await fetchTemplate();
1937
+ const content = template.replace("{{PROJECT_CONTEXT}}", projectContext ?? "");
2135
1938
  for (const target of targets) {
2136
1939
  writeTarget(cwd, target, content);
2137
1940
  generated.push(TARGET_FILES[target]);
@@ -6959,7 +6762,7 @@ var runToolCommand = new Command18("run-tool").description("Run a tool as it wou
6959
6762
  // package.json
6960
6763
  var package_default = {
6961
6764
  name: "struere",
6962
- version: "0.10.2",
6765
+ version: "0.10.4",
6963
6766
  description: "Build, test, and deploy AI agents",
6964
6767
  keywords: [
6965
6768
  "ai",
@@ -1 +1 @@
1
- {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAUnC,KAAK,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;AA6S7C,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAwBnH;AAED,eAAO,MAAM,WAAW,SAsCpB,CAAA"}
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/docs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAenC,KAAK,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;AAqF7C,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAyBnH;AAED,eAAO,MAAM,WAAW,SAsCpB,CAAA"}
package/dist/cli/index.js CHANGED
@@ -540,7 +540,8 @@ async function runTool(options) {
540
540
  agentId: agentResult.value._id,
541
541
  environment: options.environment,
542
542
  toolName: options.toolName,
543
- toolArgs: options.toolArgs
543
+ toolArgs: options.toolArgs,
544
+ organizationId: options.organizationId
544
545
  }
545
546
  }),
546
547
  signal: AbortSignal.timeout(30000)
@@ -1831,7 +1832,12 @@ function getResourceDirectories(cwd) {
1831
1832
  }
1832
1833
 
1833
1834
  // src/cli/commands/docs.ts
1834
- var DOCS_BASE = "https://docs.struere.dev";
1835
+ var TEMPLATE_URL = "https://docs.struere.dev/llms-workspace.txt";
1836
+ var FALLBACK_TEMPLATE = `# Struere Workspace
1837
+
1838
+ > Run \`struere docs\` with internet access to generate full documentation.
1839
+
1840
+ {{PROJECT_CONTEXT}}`;
1835
1841
  var ALL_TARGETS = ["claude", "cursor", "copilot"];
1836
1842
  var TARGET_FILES = {
1837
1843
  claude: "CLAUDE.md",
@@ -1885,222 +1891,18 @@ function buildProjectContext(orgName, resources) {
1885
1891
  return lines.join(`
1886
1892
  `);
1887
1893
  }
1888
- function buildDocument(projectContext) {
1889
- const lines = [];
1890
- lines.push(`# Struere Workspace`);
1891
- lines.push("");
1892
- lines.push(`> This is a Struere workspace project. You define agents, data types, roles, triggers, and custom tools here. The CLI syncs them to the Convex backend.`);
1893
- lines.push("");
1894
- lines.push(`## Agent Usage`);
1895
- lines.push("");
1896
- lines.push("If you are an AI coding agent (Claude Code, Cursor, Copilot, etc.), use these patterns:");
1897
- lines.push("");
1898
- lines.push("**Auth**: Set `STRUERE_API_KEY` environment variable (no browser login needed)");
1899
- lines.push("");
1900
- lines.push("**Sync**: Use `struere sync` instead of `struere dev` \u2014 it syncs once and exits (no watch loop)");
1901
- lines.push("```bash");
1902
- lines.push("struere sync # sync to development + eval, then exit");
1903
- lines.push("struere sync --json # machine-readable JSON output");
1904
- lines.push("struere sync --env production # sync to production");
1905
- lines.push("struere sync --force # skip deletion confirmations");
1906
- lines.push("```");
1907
- lines.push("");
1908
- lines.push("**Deploy**: `struere deploy --force` skips confirmation prompts");
1909
- lines.push("");
1910
- lines.push("**JSON output**: Most commands support `--json` for structured output:");
1911
- lines.push("```bash");
1912
- lines.push("struere data list <type> --json");
1913
- lines.push("struere status --json");
1914
- lines.push("struere deploy --json --force");
1915
- lines.push("```");
1916
- lines.push("");
1917
- lines.push("**Non-interactive mode** is auto-detected when `STRUERE_API_KEY` is set or stdout is not a TTY. In this mode, all confirmation prompts are auto-accepted and spinners are replaced with plain text.");
1918
- lines.push("");
1919
- lines.push("**Exit codes**: All commands exit `0` on success, `1` on error. Check `$?` after execution.");
1920
- lines.push("");
1921
- if (projectContext) {
1922
- lines.push(projectContext);
1923
- lines.push("");
1894
+ async function fetchTemplate() {
1895
+ try {
1896
+ const controller = new AbortController;
1897
+ const timeout = setTimeout(() => controller.abort(), 5000);
1898
+ const response = await fetch(TEMPLATE_URL, { signal: controller.signal });
1899
+ clearTimeout(timeout);
1900
+ if (!response.ok)
1901
+ throw new Error(`HTTP ${response.status}`);
1902
+ return await response.text();
1903
+ } catch {
1904
+ return FALLBACK_TEMPLATE;
1924
1905
  }
1925
- lines.push(`## Project Structure`);
1926
- lines.push("");
1927
- lines.push("```");
1928
- lines.push("agents/ # Agent definitions (one file per agent)");
1929
- lines.push("entity-types/ # Data type schemas (like DB tables)");
1930
- lines.push("roles/ # RBAC roles with policies, scope rules, field masks");
1931
- lines.push("triggers/ # Automation rules (react to entity changes)");
1932
- lines.push("tools/index.ts # Custom tools shared by all agents");
1933
- lines.push("evals/*.eval.yaml # Test suites for agent evaluation");
1934
- lines.push("fixtures/*.fixture.yaml # Test data for eval environment");
1935
- lines.push("struere.json # Organization config (auto-generated)");
1936
- lines.push("```");
1937
- lines.push("");
1938
- lines.push(`## CLI Commands`);
1939
- lines.push("");
1940
- lines.push("| Command | Description |");
1941
- lines.push("|---------|-------------|");
1942
- lines.push("| `struere sync` | One-shot sync to Convex and exit (agent-friendly) |");
1943
- lines.push("| `struere dev` | Watch files and sync to Convex on save |");
1944
- lines.push("| `struere deploy` | Push development config to production |");
1945
- lines.push("| `struere add agent\\|data-type\\|role\\|trigger\\|eval\\|fixture <name>` | Scaffold a new resource |");
1946
- lines.push("| `struere status` | Compare local vs remote state |");
1947
- lines.push("| `struere pull` | Download remote resources to local files |");
1948
- lines.push("| `struere data types` | List data types in an environment |");
1949
- lines.push("| `struere data list <type>` | List records (supports `--status`, `--limit`, `--json`) |");
1950
- lines.push("| `struere data get <id>` | Get record details |");
1951
- lines.push("| `struere data create <type>` | Create record (interactive or `--data <json>`) |");
1952
- lines.push("| `struere data update <id>` | Update record (`--data <json>`, `--status`) |");
1953
- lines.push("| `struere data delete <id>` | Delete record (with confirmation) |");
1954
- lines.push("| `struere data search <type> <query>` | Search records by text |");
1955
- lines.push("| `struere eval run <suite>` | Run an eval suite and write Markdown results |");
1956
- lines.push("| `struere eval run <suite> --case <name>` | Run specific case(s) by name |");
1957
- lines.push("| `struere eval run <suite> --tag <tag>` | Run cases matching a tag |");
1958
- lines.push("| `struere templates list` | List WhatsApp message templates |");
1959
- lines.push("| `struere templates create <name>` | Create a template (`--components <json>` or `--file <path>`) |");
1960
- lines.push("| `struere templates delete <name>` | Delete a template (with confirmation) |");
1961
- lines.push("| `struere templates status <name>` | Check template approval status |");
1962
- lines.push("| `struere docs` | Regenerate this file |");
1963
- lines.push("");
1964
- lines.push(`## Key Patterns`);
1965
- lines.push("");
1966
- lines.push("- **Imports**: `import { defineAgent, defineData, defineRole, defineTrigger, defineTools } from 'struere'`");
1967
- lines.push("- **Default model**: `grok-4-1-fast` (provider: `xai`). Also supports `anthropic`, `openai` and `google`");
1968
- lines.push("- **Scope rule values**: `actor.userId`, `actor.entityId`, `actor.organizationId`, `actor.relatedIds:TYPE`, `literal:VALUE`");
1969
- lines.push("- **Policy actions**: `create`, `read`, `update`, `delete`, `list` (deny overrides allow)");
1970
- lines.push("- **Entity link/unlink params**: `fromId`, `toId`, `relationType`");
1971
- lines.push("- **Trigger template vars**: `{{trigger.entityId}}`, `{{trigger.data.X}}`, `{{steps.NAME.X}}`");
1972
- lines.push("");
1973
- lines.push(`## Dynamic System Prompts`);
1974
- lines.push("");
1975
- lines.push("System prompts are **not static strings** \u2014 they are templates evaluated at runtime before every LLM call. This is one of the most powerful features in Struere because it enables completely different agent behavior depending on conditions, live data, and even other agents' responses.");
1976
- lines.push("");
1977
- lines.push("### Template Variables");
1978
- lines.push("Simple variable substitution: `{{agentName}}`, `{{organizationName}}`, `{{currentTime}}`, `{{entityTypes}}`, `{{roles}}`, `{{message}}`, `{{thread.metadata.X}}`");
1979
- lines.push("");
1980
- lines.push("### Embedded Queries (Function Calls)");
1981
- lines.push("Pull live data from the database directly into the system prompt:");
1982
- lines.push("```");
1983
- lines.push('{{entity.query({"type": "customer", "limit": 5})}}');
1984
- lines.push('{{entity.get({"id": "ent_123"})}}');
1985
- lines.push("```");
1986
- lines.push("This means the agent always sees the latest data \u2014 no stale context.");
1987
- lines.push("");
1988
- lines.push("### Custom Tools in Prompts");
1989
- lines.push("Since custom tools can run arbitrary logic, you can create tools specifically to generate dynamic prompt sections. A custom tool can fetch external APIs, compute conditions, aggregate data, or format context \u2014 and its output gets embedded into the system prompt at runtime.");
1990
- lines.push("");
1991
- lines.push("### Agent-to-Agent in Prompts");
1992
- lines.push('You can even use `agent.chat` in the template to have another agent\'s response injected into the system prompt. This enables patterns like a "context agent" that summarizes relevant info before the main agent starts reasoning.');
1993
- lines.push("");
1994
- lines.push(`For full template syntax: [System Prompt Templates](${DOCS_BASE}/tools/system-prompt-templates.md)`);
1995
- lines.push("");
1996
- lines.push(`## WhatsApp Template Management`);
1997
- lines.push("");
1998
- lines.push("WhatsApp message templates are required for outbound messages outside the 24-hour messaging window. Struere supports full template lifecycle management.");
1999
- lines.push("");
2000
- lines.push("### Template Actions");
2001
- lines.push("");
2002
- lines.push("| Action | Description |");
2003
- lines.push("|--------|-------------|");
2004
- lines.push("| `whatsappActions.listTemplates` | List all templates for a connection |");
2005
- lines.push("| `whatsappActions.createTemplate` | Create a new template on Meta |");
2006
- lines.push("| `whatsappActions.deleteTemplate` | Delete a template from Meta |");
2007
- lines.push("| `whatsappActions.getTemplateStatus` | Check approval status of a template |");
2008
- lines.push("");
2009
- lines.push("### Template Categories");
2010
- lines.push("");
2011
- lines.push("- **UTILITY**: transactional updates (order confirmations, reminders)");
2012
- lines.push("- **MARKETING**: promotional content");
2013
- lines.push("- **AUTHENTICATION**: OTP/verification codes");
2014
- lines.push("");
2015
- lines.push("### Template Components");
2016
- lines.push("");
2017
- lines.push("- **HEADER** (optional): TEXT, IMAGE, VIDEO, or DOCUMENT");
2018
- lines.push("- **BODY** (required): main message text with `{{named_params}}` or `{{1}}` positional");
2019
- lines.push("- **FOOTER** (optional): short text, no variables");
2020
- lines.push("- **BUTTONS** (optional): QUICK_REPLY, URL, PHONE_NUMBER (do not interleave QUICK_REPLY with URL/PHONE_NUMBER)");
2021
- lines.push("");
2022
- lines.push('Use `parameter_format: "NAMED"` with `{{param_name}}` variables (recommended over positional). Include examples when variables appear in HEADER or BODY.');
2023
- lines.push("");
2024
- lines.push("### Status Flow");
2025
- lines.push("");
2026
- lines.push("`PENDING` \u2192 `APPROVED` | `REJECTED` | `PAUSED`");
2027
- lines.push("");
2028
- lines.push(`For details: [WhatsApp Integration](${DOCS_BASE}/integrations/whatsapp.md)`);
2029
- lines.push("");
2030
- lines.push(`## Multi-Agent Communication (agent.chat)`);
2031
- lines.push("");
2032
- lines.push("The `agent.chat` tool lets agents delegate work to other agents. This is a core building block for complex systems:");
2033
- lines.push("");
2034
- lines.push("- **Orchestrator pattern**: A coordinator agent routes tasks to specialist agents based on the request");
2035
- lines.push("- **Trigger actions**: Use `agent.chat` inside trigger action pipelines to have an agent reason about entity changes");
2036
- lines.push("- **Chained delegation**: Agents can call other agents up to 3 levels deep (A\u2192B\u2192C), with cycle detection");
2037
- lines.push("- **Isolated execution**: Each agent runs its own LLM loop with its own system prompt, tools, and permissions");
2038
- lines.push("");
2039
- lines.push("```typescript");
2040
- lines.push("// Orchestrator that delegates to specialists");
2041
- lines.push('tools: ["agent.chat", "entity.query"]');
2042
- lines.push("// In trigger actions:");
2043
- lines.push('{ tool: "agent.chat", args: { agent: "billing-agent", message: "Process refund for {{trigger.data.orderId}}" } }');
2044
- lines.push("```");
2045
- lines.push("");
2046
- lines.push(`For details: [Agents](${DOCS_BASE}/platform/agents.md)`);
2047
- lines.push("");
2048
- lines.push(`## Best Practices`);
2049
- lines.push("");
2050
- lines.push("- **Keep tools under 10 per agent.** Agents perform significantly worse when they have too many tools to choose from. If an agent needs more, split it into specialist agents and use `agent.chat` to orchestrate");
2051
- lines.push("- **Always ask the user before making assumptions.** The user may not be technical \u2014 help them accomplish what they want by asking the right questions and offering clear options");
2052
- lines.push("- **Always check the documentation before making changes.** Fetch the relevant doc link below to verify the correct API, field names, and patterns. Do not guess \u2014 wrong field names or patterns will cause silent failures");
2053
- lines.push("- **Use `struere sync` to validate changes.** Run after editing files to sync to Convex. Use `struere dev` for continuous watch mode during manual development");
2054
- lines.push("- **Test with evals.** Write eval suites to catch regressions in agent behavior (`struere add eval <name>`)");
2055
- lines.push("");
2056
- lines.push(`## Documentation`);
2057
- lines.push("");
2058
- lines.push(`Fetch these URLs for detailed documentation on each topic:`);
2059
- lines.push("");
2060
- lines.push("### SDK");
2061
- lines.push(`- [SDK Overview](${DOCS_BASE}/sdk/overview.md)`);
2062
- lines.push(`- [defineAgent](${DOCS_BASE}/sdk/define-agent.md)`);
2063
- lines.push(`- [defineData](${DOCS_BASE}/sdk/define-data.md)`);
2064
- lines.push(`- [defineRole](${DOCS_BASE}/sdk/define-role.md)`);
2065
- lines.push(`- [defineTrigger](${DOCS_BASE}/sdk/define-trigger.md)`);
2066
- lines.push(`- [defineTools](${DOCS_BASE}/sdk/define-tools.md)`);
2067
- lines.push("");
2068
- lines.push("### Tools");
2069
- lines.push(`- [Built-in Tools](${DOCS_BASE}/tools/built-in-tools.md)`);
2070
- lines.push(`- [Custom Tools](${DOCS_BASE}/tools/custom-tools.md)`);
2071
- lines.push(`- [System Prompt Templates](${DOCS_BASE}/tools/system-prompt-templates.md)`);
2072
- lines.push("");
2073
- lines.push("### Platform");
2074
- lines.push(`- [Data](${DOCS_BASE}/platform/data.md)`);
2075
- lines.push(`- [Permissions](${DOCS_BASE}/platform/permissions.md)`);
2076
- lines.push(`- [Agents](${DOCS_BASE}/platform/agents.md)`);
2077
- lines.push(`- [Events](${DOCS_BASE}/platform/events.md)`);
2078
- lines.push(`- [Triggers](${DOCS_BASE}/platform/triggers.md)`);
2079
- lines.push(`- [Environment Isolation](${DOCS_BASE}/platform/environment-isolation.md)`);
2080
- lines.push(`- [Evaluations](${DOCS_BASE}/platform/evals.md)`);
2081
- lines.push("");
2082
- lines.push("### CLI");
2083
- lines.push(`- [CLI Overview](${DOCS_BASE}/cli/overview.md)`);
2084
- lines.push(`- [struere init](${DOCS_BASE}/cli/init.md)`);
2085
- lines.push(`- [struere sync](${DOCS_BASE}/cli/sync.md)`);
2086
- lines.push(`- [struere dev](${DOCS_BASE}/cli/dev.md)`);
2087
- lines.push(`- [struere add](${DOCS_BASE}/cli/add.md)`);
2088
- lines.push(`- [struere deploy](${DOCS_BASE}/cli/deploy.md)`);
2089
- lines.push(`- [struere eval run](${DOCS_BASE}/cli/eval.md)`);
2090
- lines.push(`- [struere templates](${DOCS_BASE}/cli/templates.md)`);
2091
- lines.push("");
2092
- lines.push("### API & Integrations");
2093
- lines.push(`- [Chat API](${DOCS_BASE}/api/chat.md)`);
2094
- lines.push(`- [Webhooks](${DOCS_BASE}/api/webhooks.md)`);
2095
- lines.push(`- [WhatsApp Integration](${DOCS_BASE}/integrations/whatsapp.md)`);
2096
- lines.push("");
2097
- lines.push("### Reference");
2098
- lines.push(`- [Project Structure](${DOCS_BASE}/reference/project-structure.md)`);
2099
- lines.push(`- [Model Configuration](${DOCS_BASE}/reference/model-configuration.md)`);
2100
- lines.push("");
2101
- lines.push(`Full docs: ${DOCS_BASE}/llms-full.txt`);
2102
- return lines.join(`
2103
- `);
2104
1906
  }
2105
1907
  function writeTarget(cwd, target, content) {
2106
1908
  const filePath = join6(cwd, TARGET_FILES[target]);
@@ -2131,7 +1933,8 @@ async function generateDocs(cwd, targets) {
2131
1933
  });
2132
1934
  }
2133
1935
  }
2134
- const content = buildDocument(projectContext);
1936
+ const template = await fetchTemplate();
1937
+ const content = template.replace("{{PROJECT_CONTEXT}}", projectContext ?? "");
2135
1938
  for (const target of targets) {
2136
1939
  writeTarget(cwd, target, content);
2137
1940
  generated.push(TARGET_FILES[target]);
@@ -6959,7 +6762,7 @@ var runToolCommand = new Command18("run-tool").description("Run a tool as it wou
6959
6762
  // package.json
6960
6763
  var package_default = {
6961
6764
  name: "struere",
6962
- version: "0.10.2",
6765
+ version: "0.10.4",
6963
6766
  description: "Build, test, and deploy AI agents",
6964
6767
  keywords: [
6965
6768
  "ai",
@@ -1 +1 @@
1
- {"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"convex.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/convex.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "struere",
3
- "version": "0.10.2",
3
+ "version": "0.10.4",
4
4
  "description": "Build, test, and deploy AI agents",
5
5
  "keywords": [
6
6
  "ai",