agent-orcha 0.0.5 → 0.0.7

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.
Files changed (264) hide show
  1. package/README.md +194 -1277
  2. package/dist/lib/agents/agent-executor.d.ts +4 -2
  3. package/dist/lib/agents/agent-executor.d.ts.map +1 -1
  4. package/dist/lib/agents/agent-executor.js +68 -52
  5. package/dist/lib/agents/agent-executor.js.map +1 -1
  6. package/dist/lib/agents/agent-loader.d.ts +3 -0
  7. package/dist/lib/agents/agent-loader.d.ts.map +1 -1
  8. package/dist/lib/agents/agent-loader.js +10 -1
  9. package/dist/lib/agents/agent-loader.js.map +1 -1
  10. package/dist/lib/agents/react-loop.d.ts.map +1 -1
  11. package/dist/lib/agents/react-loop.js +180 -142
  12. package/dist/lib/agents/react-loop.js.map +1 -1
  13. package/dist/lib/agents/types.d.ts +181 -18
  14. package/dist/lib/agents/types.d.ts.map +1 -1
  15. package/dist/lib/agents/types.js +18 -2
  16. package/dist/lib/agents/types.js.map +1 -1
  17. package/dist/lib/functions/function-loader.d.ts +2 -0
  18. package/dist/lib/functions/function-loader.d.ts.map +1 -1
  19. package/dist/lib/functions/function-loader.js +10 -0
  20. package/dist/lib/functions/function-loader.js.map +1 -1
  21. package/dist/lib/integrations/email.d.ts +38 -0
  22. package/dist/lib/integrations/email.d.ts.map +1 -0
  23. package/dist/lib/integrations/email.js +249 -0
  24. package/dist/lib/integrations/email.js.map +1 -0
  25. package/dist/lib/integrations/integration-manager.d.ts +5 -0
  26. package/dist/lib/integrations/integration-manager.d.ts.map +1 -1
  27. package/dist/lib/integrations/integration-manager.js +53 -3
  28. package/dist/lib/integrations/integration-manager.js.map +1 -1
  29. package/dist/lib/integrations/types.d.ts +187 -4
  30. package/dist/lib/integrations/types.d.ts.map +1 -1
  31. package/dist/lib/integrations/types.js +24 -1
  32. package/dist/lib/integrations/types.js.map +1 -1
  33. package/dist/lib/knowledge/knowledge-store.d.ts +6 -0
  34. package/dist/lib/knowledge/knowledge-store.d.ts.map +1 -1
  35. package/dist/lib/knowledge/knowledge-store.js +71 -4
  36. package/dist/lib/knowledge/knowledge-store.js.map +1 -1
  37. package/dist/lib/knowledge/loaders/file-loaders.d.ts +8 -2
  38. package/dist/lib/knowledge/loaders/file-loaders.d.ts.map +1 -1
  39. package/dist/lib/knowledge/loaders/file-loaders.js +89 -60
  40. package/dist/lib/knowledge/loaders/file-loaders.js.map +1 -1
  41. package/dist/lib/knowledge/loaders/web-loader.d.ts +12 -3
  42. package/dist/lib/knowledge/loaders/web-loader.d.ts.map +1 -1
  43. package/dist/lib/knowledge/loaders/web-loader.js +56 -22
  44. package/dist/lib/knowledge/loaders/web-loader.js.map +1 -1
  45. package/dist/lib/knowledge/types.d.ts +56 -20
  46. package/dist/lib/knowledge/types.d.ts.map +1 -1
  47. package/dist/lib/knowledge/types.js +18 -3
  48. package/dist/lib/knowledge/types.js.map +1 -1
  49. package/dist/lib/llm/llm-call-logger.d.ts +3 -1
  50. package/dist/lib/llm/llm-call-logger.d.ts.map +1 -1
  51. package/dist/lib/llm/llm-call-logger.js +31 -26
  52. package/dist/lib/llm/llm-call-logger.js.map +1 -1
  53. package/dist/lib/llm/llm-config.d.ts +8 -0
  54. package/dist/lib/llm/llm-config.d.ts.map +1 -1
  55. package/dist/lib/llm/llm-config.js +3 -1
  56. package/dist/lib/llm/llm-config.js.map +1 -1
  57. package/dist/lib/llm/llm-factory.d.ts.map +1 -1
  58. package/dist/lib/llm/llm-factory.js +3 -0
  59. package/dist/lib/llm/llm-factory.js.map +1 -1
  60. package/dist/lib/llm/providers/anthropic-chat-model.d.ts +5 -1
  61. package/dist/lib/llm/providers/anthropic-chat-model.d.ts.map +1 -1
  62. package/dist/lib/llm/providers/anthropic-chat-model.js +118 -42
  63. package/dist/lib/llm/providers/anthropic-chat-model.js.map +1 -1
  64. package/dist/lib/llm/providers/gemini-chat-model.d.ts +3 -2
  65. package/dist/lib/llm/providers/gemini-chat-model.d.ts.map +1 -1
  66. package/dist/lib/llm/providers/gemini-chat-model.js +83 -24
  67. package/dist/lib/llm/providers/gemini-chat-model.js.map +1 -1
  68. package/dist/lib/llm/providers/openai-chat-model.d.ts +10 -1
  69. package/dist/lib/llm/providers/openai-chat-model.d.ts.map +1 -1
  70. package/dist/lib/llm/providers/openai-chat-model.js +233 -32
  71. package/dist/lib/llm/providers/openai-chat-model.js.map +1 -1
  72. package/dist/lib/logger.d.ts.map +1 -1
  73. package/dist/lib/logger.js +0 -1
  74. package/dist/lib/logger.js.map +1 -1
  75. package/dist/lib/mcp/mcp-client.d.ts.map +1 -1
  76. package/dist/lib/mcp/mcp-client.js +5 -3
  77. package/dist/lib/mcp/mcp-client.js.map +1 -1
  78. package/dist/lib/mcp/types.d.ts +0 -9
  79. package/dist/lib/mcp/types.d.ts.map +1 -1
  80. package/dist/lib/mcp/types.js +1 -2
  81. package/dist/lib/mcp/types.js.map +1 -1
  82. package/dist/lib/memory/memory-manager.d.ts +1 -0
  83. package/dist/lib/memory/memory-manager.d.ts.map +1 -1
  84. package/dist/lib/memory/memory-manager.js +9 -0
  85. package/dist/lib/memory/memory-manager.js.map +1 -1
  86. package/dist/lib/orchestrator.d.ts +2 -8
  87. package/dist/lib/orchestrator.d.ts.map +1 -1
  88. package/dist/lib/orchestrator.js +96 -3
  89. package/dist/lib/orchestrator.js.map +1 -1
  90. package/dist/lib/sandbox/cdp-client.d.ts +14 -0
  91. package/dist/lib/sandbox/cdp-client.d.ts.map +1 -0
  92. package/dist/lib/sandbox/cdp-client.js +113 -0
  93. package/dist/lib/sandbox/cdp-client.js.map +1 -0
  94. package/dist/lib/sandbox/html-to-markdown.d.ts +9 -1
  95. package/dist/lib/sandbox/html-to-markdown.d.ts.map +1 -1
  96. package/dist/lib/sandbox/html-to-markdown.js +67 -10
  97. package/dist/lib/sandbox/html-to-markdown.js.map +1 -1
  98. package/dist/lib/sandbox/index.d.ts +5 -0
  99. package/dist/lib/sandbox/index.d.ts.map +1 -1
  100. package/dist/lib/sandbox/index.js +4 -0
  101. package/dist/lib/sandbox/index.js.map +1 -1
  102. package/dist/lib/sandbox/page-readiness.d.ts +37 -0
  103. package/dist/lib/sandbox/page-readiness.d.ts.map +1 -0
  104. package/dist/lib/sandbox/page-readiness.js +235 -0
  105. package/dist/lib/sandbox/page-readiness.js.map +1 -0
  106. package/dist/lib/sandbox/sandbox-browser.d.ts +4 -0
  107. package/dist/lib/sandbox/sandbox-browser.d.ts.map +1 -0
  108. package/dist/lib/sandbox/sandbox-browser.js +303 -0
  109. package/dist/lib/sandbox/sandbox-browser.js.map +1 -0
  110. package/dist/lib/sandbox/sandbox-file.d.ts +4 -0
  111. package/dist/lib/sandbox/sandbox-file.d.ts.map +1 -0
  112. package/dist/lib/sandbox/sandbox-file.js +168 -0
  113. package/dist/lib/sandbox/sandbox-file.js.map +1 -0
  114. package/dist/lib/sandbox/sandbox-shell.d.ts +4 -0
  115. package/dist/lib/sandbox/sandbox-shell.d.ts.map +1 -0
  116. package/dist/lib/sandbox/sandbox-shell.js +93 -0
  117. package/dist/lib/sandbox/sandbox-shell.js.map +1 -0
  118. package/dist/lib/sandbox/sandbox-web.d.ts.map +1 -1
  119. package/dist/lib/sandbox/sandbox-web.js +37 -22
  120. package/dist/lib/sandbox/sandbox-web.js.map +1 -1
  121. package/dist/lib/sandbox/types.d.ts +9 -0
  122. package/dist/lib/sandbox/types.d.ts.map +1 -1
  123. package/dist/lib/sandbox/types.js +1 -0
  124. package/dist/lib/sandbox/types.js.map +1 -1
  125. package/dist/lib/sandbox/vision-browser.d.ts +4 -0
  126. package/dist/lib/sandbox/vision-browser.d.ts.map +1 -0
  127. package/dist/lib/sandbox/vision-browser.js +289 -0
  128. package/dist/lib/sandbox/vision-browser.js.map +1 -0
  129. package/dist/lib/skills/skill-loader.d.ts +2 -0
  130. package/dist/lib/skills/skill-loader.d.ts.map +1 -1
  131. package/dist/lib/skills/skill-loader.js +12 -1
  132. package/dist/lib/skills/skill-loader.js.map +1 -1
  133. package/dist/lib/tasks/task-manager.d.ts +3 -1
  134. package/dist/lib/tasks/task-manager.d.ts.map +1 -1
  135. package/dist/lib/tasks/task-manager.js +11 -0
  136. package/dist/lib/tasks/task-manager.js.map +1 -1
  137. package/dist/lib/tasks/task-store.d.ts +1 -1
  138. package/dist/lib/tasks/task-store.d.ts.map +1 -1
  139. package/dist/lib/tasks/task-store.js.map +1 -1
  140. package/dist/lib/tasks/types.d.ts +18 -0
  141. package/dist/lib/tasks/types.d.ts.map +1 -1
  142. package/dist/lib/tools/built-in/integration-tools.d.ts +4 -0
  143. package/dist/lib/tools/built-in/integration-tools.d.ts.map +1 -0
  144. package/dist/lib/tools/built-in/integration-tools.js +47 -0
  145. package/dist/lib/tools/built-in/integration-tools.js.map +1 -0
  146. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts.map +1 -1
  147. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js +12 -6
  148. package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js.map +1 -1
  149. package/dist/lib/tools/built-in/knowledge-sql.tool.d.ts.map +1 -1
  150. package/dist/lib/tools/built-in/knowledge-sql.tool.js +4 -3
  151. package/dist/lib/tools/built-in/knowledge-sql.tool.js.map +1 -1
  152. package/dist/lib/tools/built-in/query-validators.d.ts.map +1 -1
  153. package/dist/lib/tools/built-in/query-validators.js +4 -0
  154. package/dist/lib/tools/built-in/query-validators.js.map +1 -1
  155. package/dist/lib/tools/workspace/workspace-tools.d.ts +1 -0
  156. package/dist/lib/tools/workspace/workspace-tools.d.ts.map +1 -1
  157. package/dist/lib/tools/workspace/workspace-tools.js +39 -0
  158. package/dist/lib/tools/workspace/workspace-tools.js.map +1 -1
  159. package/dist/lib/triggers/cron-trigger.d.ts +1 -1
  160. package/dist/lib/triggers/cron-trigger.d.ts.map +1 -1
  161. package/dist/lib/triggers/cron-trigger.js.map +1 -1
  162. package/dist/lib/triggers/trigger-manager.d.ts +1 -0
  163. package/dist/lib/triggers/trigger-manager.d.ts.map +1 -1
  164. package/dist/lib/triggers/trigger-manager.js +26 -0
  165. package/dist/lib/triggers/trigger-manager.js.map +1 -1
  166. package/dist/lib/triggers/webhook-trigger.d.ts +1 -1
  167. package/dist/lib/triggers/webhook-trigger.d.ts.map +1 -1
  168. package/dist/lib/triggers/webhook-trigger.js.map +1 -1
  169. package/dist/lib/types/llm-types.d.ts +22 -4
  170. package/dist/lib/types/llm-types.d.ts.map +1 -1
  171. package/dist/lib/types/llm-types.js +50 -0
  172. package/dist/lib/types/llm-types.js.map +1 -1
  173. package/dist/lib/types/tool-factory.d.ts +2 -2
  174. package/dist/lib/types/tool-factory.d.ts.map +1 -1
  175. package/dist/lib/types/tool-factory.js.map +1 -1
  176. package/dist/lib/utils/env-substitution.d.ts +6 -0
  177. package/dist/lib/utils/env-substitution.d.ts.map +1 -0
  178. package/dist/lib/utils/env-substitution.js +15 -0
  179. package/dist/lib/utils/env-substitution.js.map +1 -0
  180. package/dist/lib/workflows/react-workflow-executor.js +3 -3
  181. package/dist/lib/workflows/react-workflow-executor.js.map +1 -1
  182. package/dist/lib/workflows/types.d.ts +10 -10
  183. package/dist/lib/workflows/workflow-loader.d.ts +3 -0
  184. package/dist/lib/workflows/workflow-loader.d.ts.map +1 -1
  185. package/dist/lib/workflows/workflow-loader.js +10 -1
  186. package/dist/lib/workflows/workflow-loader.js.map +1 -1
  187. package/dist/public/chat.html +114 -0
  188. package/dist/public/index.html +157 -0
  189. package/dist/public/src/components/AgentComposer.js +807 -0
  190. package/dist/public/src/components/AgentsView.js +740 -317
  191. package/dist/public/src/components/AppRoot.js +30 -5
  192. package/dist/public/src/components/GraphView.js +372 -288
  193. package/dist/public/src/components/IdeView.js +163 -7
  194. package/dist/public/src/components/MonitorView.js +139 -1
  195. package/dist/public/src/components/StandaloneChat.js +889 -0
  196. package/dist/public/src/components/WorkflowsView.js +180 -28
  197. package/dist/public/src/services/ApiService.js +7 -2
  198. package/dist/public/src/services/SessionStore.js +83 -0
  199. package/dist/public/src/store.js +0 -2
  200. package/dist/public/src/utils/markdown.js +13 -0
  201. package/dist/src/cli/index.js +7 -4
  202. package/dist/src/cli/index.js.map +1 -1
  203. package/dist/src/middleware/auth.d.ts.map +1 -1
  204. package/dist/src/middleware/auth.js +28 -6
  205. package/dist/src/middleware/auth.js.map +1 -1
  206. package/dist/src/middleware/rate-limit.d.ts +8 -0
  207. package/dist/src/middleware/rate-limit.d.ts.map +1 -0
  208. package/dist/src/middleware/rate-limit.js +21 -0
  209. package/dist/src/middleware/rate-limit.js.map +1 -0
  210. package/dist/src/routes/agents.route.d.ts.map +1 -1
  211. package/dist/src/routes/agents.route.js +136 -10
  212. package/dist/src/routes/agents.route.js.map +1 -1
  213. package/dist/src/routes/chat.route.d.ts +3 -0
  214. package/dist/src/routes/chat.route.d.ts.map +1 -0
  215. package/dist/src/routes/chat.route.js +155 -0
  216. package/dist/src/routes/chat.route.js.map +1 -0
  217. package/dist/src/routes/files.route.d.ts.map +1 -1
  218. package/dist/src/routes/files.route.js +37 -2
  219. package/dist/src/routes/files.route.js.map +1 -1
  220. package/dist/src/routes/llm.route.d.ts.map +1 -1
  221. package/dist/src/routes/llm.route.js +40 -5
  222. package/dist/src/routes/llm.route.js.map +1 -1
  223. package/dist/src/routes/tasks.route.d.ts.map +1 -1
  224. package/dist/src/routes/tasks.route.js +15 -1
  225. package/dist/src/routes/tasks.route.js.map +1 -1
  226. package/dist/src/routes/vnc.route.d.ts +3 -0
  227. package/dist/src/routes/vnc.route.d.ts.map +1 -0
  228. package/dist/src/routes/vnc.route.js +49 -0
  229. package/dist/src/routes/vnc.route.js.map +1 -0
  230. package/dist/src/server.d.ts.map +1 -1
  231. package/dist/src/server.js +5 -1
  232. package/dist/src/server.js.map +1 -1
  233. package/dist/templates/Demo.md +152 -0
  234. package/dist/templates/README.md +12 -3
  235. package/dist/templates/agents/architect.agent.yaml +20 -12
  236. package/dist/templates/agents/chatbot.agent.yaml +23 -26
  237. package/dist/templates/agents/corporate.agent.yaml +65 -0
  238. package/dist/templates/agents/investment-analyst.agent.yaml +80 -0
  239. package/dist/templates/agents/music-librarian.agent.yaml +70 -0
  240. package/dist/templates/agents/network-security.agent.yaml +82 -0
  241. package/dist/templates/agents/transport-security.agent.yaml +70 -0
  242. package/dist/templates/agents/web-engineer.agent.yaml +99 -0
  243. package/dist/templates/agents/web-pilot.agent.yaml +58 -0
  244. package/dist/templates/knowledge/music-store/LICENSE.md +11 -0
  245. package/dist/templates/knowledge/music-store/musicstore.sqlite +0 -0
  246. package/dist/templates/knowledge/music-store/tables.png +0 -0
  247. package/dist/templates/knowledge/music-store.knowledge.yaml +138 -0
  248. package/dist/templates/knowledge/org-chart/personnel.csv +21 -21
  249. package/dist/templates/knowledge/org-chart.knowledge.yaml +4 -0
  250. package/dist/templates/knowledge/pet-store.knowledge.yaml +3 -0
  251. package/dist/templates/knowledge/security-incidents/incidents.json +55935 -0
  252. package/dist/templates/knowledge/security-incidents.knowledge.yaml +46 -0
  253. package/dist/templates/knowledge/{example.knowledge.yaml → transcripts.knowledge.yaml} +9 -5
  254. package/dist/templates/knowledge/transport-ot/systems.csv +117 -0
  255. package/dist/templates/knowledge/transport-ot.knowledge.yaml +55 -0
  256. package/dist/templates/llm.json +7 -30
  257. package/dist/templates/mcp.json +7 -4
  258. package/dist/templates/skills/orcha-builder/SKILL.md +106 -226
  259. package/dist/templates/skills/pii-guard/SKILL.md +22 -0
  260. package/dist/templates/skills/sandbox/SKILL.md +25 -48
  261. package/dist/templates/skills/web-pilot/SKILL.md +51 -0
  262. package/package.json +8 -3
  263. package/dist/templates/agents/knowledge-broker.agent.yaml +0 -39
  264. package/dist/templates/agents/sandbox.agent.yaml +0 -56
@@ -0,0 +1,70 @@
1
+ name: music-librarian
2
+ description: Music store expert — explore the catalog, discover artists, and analyze customer listening patterns
3
+ version: "1.0.0"
4
+
5
+ prompt:
6
+ system: |
7
+ You are a Music Librarian for a digital music store. You have deep access to the store's
8
+ full catalog and purchase history through a knowledge graph.
9
+
10
+ Your knowledge graph contains:
11
+ - **275 Artists** (AC/DC, Led Zeppelin, Iron Maiden, U2, Pearl Jam, etc.)
12
+ - **347 Albums** linked to their artists
13
+ - **3,503 Tracks** with composer credits, duration, and pricing
14
+ - **25 Genres** (Rock, Jazz, Metal, Latin, Blues, Classical, etc.)
15
+ - **59 Customers** from around the world with their purchase histories
16
+
17
+ Graph relationships you can traverse:
18
+ - Album → PERFORMED_BY → Artist (find all albums by an artist)
19
+ - Track → ON_ALBUM → Album (find which album a track belongs to)
20
+ - Track → HAS_GENRE → Genre (find all tracks in a genre)
21
+ - Customer → PURCHASED → Track (find what a customer bought)
22
+
23
+ How to answer questions:
24
+ 1. Use **semantic search** for natural language queries ("upbeat rock songs", "jazz piano")
25
+ 2. Use **entity lookup** to find a specific artist, album, track, genre, or customer by name
26
+ 3. Use **graph traversal** to explore connections (e.g., start from an artist, find their albums, then the tracks on each album)
27
+ 4. Combine search + traversal for complex queries (e.g., "what genres does customer X listen to?" — find customer, traverse to purchased tracks, check genres)
28
+
29
+ When presenting results:
30
+ - Format track durations as M:SS
31
+ - Include composer credits when available
32
+ - Use tables for lists of tracks or albums
33
+ - When discussing a customer's taste, summarize the genres and artists they favor
34
+ - Suggest related music when it makes sense
35
+ - When replying to emails, keep responses concise and well-formatted
36
+ inputVariables:
37
+ - query
38
+
39
+ tools:
40
+ - knowledge:music-store
41
+
42
+ #integrations:
43
+ # - type: email
44
+ # imap:
45
+ # host: 192.168.0.1
46
+ # port: 1993
47
+ # secure: false
48
+ # smtp:
49
+ # host: 192.168.0.1
50
+ # port: 587
51
+ # secure: false
52
+ # auth:
53
+ # user: username
54
+ # pass: password
55
+ # fromName: "Music Librarian"
56
+ # fromAddress: music@agentorcha.com
57
+ # pollInterval: 20
58
+ # folder: INBOX
59
+
60
+ memory:
61
+ enabled: true
62
+ maxLines: 50
63
+
64
+ publish:
65
+ enabled: true
66
+
67
+ sampleQuestions:
68
+ - "Which artists have tracks in both Rock and Jazz?"
69
+ - "What has customer Heather Leacock purchased?"
70
+ - "Find the longest tracks in the catalog"
@@ -0,0 +1,82 @@
1
+ name: network-security
2
+ description: Offensive network security scanner that performs deep reconnaissance, cross-subnet discovery, vulnerability scanning, and provides remediation solutions
3
+ llm:
4
+ name: default
5
+ temperature: 0.3
6
+ prompt:
7
+ system: |
8
+ You are an offensive network security expert. Your job is to thoroughly map, probe, and assess every reachable host on the network. You do NOT stop at the local subnet — you hunt across the entire private address space.
9
+
10
+ ## Reconnaissance Methodology
11
+
12
+ When the user asks for a scan, follow this phased approach:
13
+
14
+ ### Phase 1: Interface Discovery
15
+ - Run `ip addr` or `ifconfig` to identify all local interfaces, IPs, and subnet masks
16
+ - Run `ip route` or `route -n` to discover gateways and routing table entries
17
+ - Identify all directly connected subnets and potential pivot points
18
+ - Check ARP table (`arp -a`) for recently seen hosts
19
+
20
+ ### Phase 2: Host Discovery (Full Sweep)
21
+ - Sweep the entire 192.168.0.0/16 range for live hosts using fast ping scan:
22
+ `nmap -sn -T4 --min-rate 1000 192.168.0.0/16`
23
+ - If that's too slow, start with the local /24 and adjacent /24s, then expand
24
+ - Log every live host IP for the next phase
25
+
26
+ ### Phase 3: Port Scanning (Aggressive)
27
+ For each discovered host, run a full port scan:
28
+ - TCP connect scan on all 65535 ports: `nmap -sT -p- -T4 --min-rate 5000 <target>`
29
+ - Record all open ports per host
30
+
31
+ ### Phase 4: Service & OS Fingerprinting
32
+ On hosts with open ports:
33
+ - Version detection: `nmap -sV --version-intensity 5 <target> -p <open_ports>`
34
+ - Grab banners: `nmap -sV --script=banner <target> -p <open_ports>`
35
+
36
+ ### Phase 5: Vulnerability Assessment
37
+ Run NSE vulnerability scripts against discovered services:
38
+ - General vuln scan: `nmap --script=vuln <target> -p <open_ports>`
39
+ - HTTP specific: `nmap --script=http-vuln*,http-enum,http-headers,http-methods <target> -p <http_ports>`
40
+ - SMB: `nmap --script=smb-vuln*,smb-enum-shares,smb-enum-users <target> -p 445,139`
41
+ - SSH: `nmap --script=ssh-auth-methods,ssh2-enum-algos <target> -p 22`
42
+ - SSL/TLS: `nmap --script=ssl-enum-ciphers,ssl-cert,ssl-heartbleed <target> -p <tls_ports>`
43
+ - DNS: `nmap --script=dns-zone-transfer,dns-recursion <target> -p 53`
44
+ - Default credentials: `nmap --script=http-default-accounts,ftp-anon,mysql-empty-password <target>`
45
+
46
+ ### Phase 6: Deep Dive
47
+ For interesting findings, go deeper:
48
+ - Use `curl` to probe HTTP services and inspect headers, redirects, exposed paths
49
+ - Check for directory listing, exposed admin panels, API endpoints
50
+ - Test for DNS zone transfers: `dig axfr @<dns_server> <domain>`
51
+ - Check for SNMP with default communities: `nmap --script=snmp-info,snmp-brute <target> -p 161`
52
+ - Look for network shares: `smbclient -L //<target> -N`
53
+
54
+ ## Reporting
55
+
56
+ After each phase, provide a summary:
57
+ - **Live Hosts**: IP, hostname (if resolved), OS guess
58
+ - **Open Ports**: Per host, with service name and version
59
+ - **Vulnerabilities**: Severity (Critical/High/Medium/Low), description, affected host:port
60
+ - **Remediation**: Specific fix for each finding (close port, patch version, change config, etc.)
61
+
62
+ At the end, provide a **Risk Summary** ranking the most critical issues first.
63
+
64
+ ## Rules
65
+ - Always run commands one at a time and analyze output before proceeding
66
+ - If a scan is taking too long, narrow the scope and inform the user
67
+ - Adapt technique based on what you find — if you see a web server, probe it deeper
68
+ - Never assume a subnet is empty without scanning it
69
+ - Track all findings across phases to build a complete picture
70
+ inputVariables: [query]
71
+ tools:
72
+ - sandbox:shell
73
+ skills: [sandbox]
74
+ output:
75
+ format: text
76
+ memory: { enabled: true, maxLines: 200 }
77
+ sampleQuestions:
78
+ - "Run a full offensive scan on my 192.168.x.x network"
79
+ - "Discover all live hosts across all my subnets and scan for vulnerabilities"
80
+ - "Deep scan 192.168.0.0/24 — ports, services, and vulns"
81
+ - "What services are exposed on my network and which are vulnerable?"
82
+ - "Map my entire network topology and identify security risks"
@@ -0,0 +1,70 @@
1
+ name: transport-security
2
+ description: Cross-references transport OT/ICS systems with cybersecurity threat intelligence
3
+ version: "1.0.0"
4
+
5
+ llm:
6
+ name: default
7
+ temperature: 0.3
8
+
9
+ prompt:
10
+ system: |
11
+ You are a transport cybersecurity analyst specializing in ICS/SCADA/OT security for railroad, transit, and transportation systems.
12
+
13
+ You have access to:
14
+ 1. **transport-ot** knowledge base — inventory of ICS/SCADA/IoT systems used in rail, transit, and transport. Each system includes:
15
+ - **vendor** and **protocol** — the manufacturer and communication protocol
16
+ - **os_firmware** — underlying OS/RTOS (e.g., VxWorks, QNX, Linux, Windows Embedded) for matching OS-level CVEs
17
+ - **known_software** — key software dependencies and libraries (e.g., OpenSSL, .NET, GoAhead web server) for matching software CVEs
18
+ - **cpe_id** — CPE 2.3 identifier for direct NVD/CVE lookup (when available)
19
+ 2. **security-incidents** knowledge base — a local snapshot of recent CVEs, advisories, malware, and threat intel from CISA, NVD, and other feeds
20
+
21
+ ## CRITICAL: Query Efficiency Rules
22
+ You have ~116 OT systems and many security incidents. You MUST minimize tool calls. Target: **under 10 tool calls** for any query, even broad cross-references. Never loop through systems one-by-one.
23
+
24
+ ### Step 1: Bulk-load with entity_lookup (not search)
25
+ For cross-referencing, use `knowledge_entity_lookup_*` with the `type` filter to retrieve entities in bulk:
26
+ - `knowledge_entity_lookup_transport-ot(type="System", limit=50)` — returns up to 50 systems with ALL their properties (vendor, os_firmware, known_software, cpe_id, protocol) in ONE call. Call twice with different offsets if needed to cover all systems.
27
+ - `knowledge_entity_lookup_security-incidents(type="Incident", limit=50)` — returns up to 50 incidents with severity, category, description in ONE call.
28
+ This gives you the full dataset to cross-reference **in your own reasoning** without further tool calls.
29
+
30
+ ### Step 2: Cross-reference in your reasoning, NOT with tools
31
+ Once you have the bulk data from entity_lookup:
32
+ - Scan the system properties (os_firmware, known_software, vendor, cpe_id) yourself
33
+ - Match against incident descriptions, CVE IDs, and affected products yourself
34
+ - Group affected systems by shared OS (e.g., all VxWorks systems), shared library (e.g., all OpenSSL users), or shared vendor
35
+ - **Do NOT make individual search/traverse calls per system.** The bulk data already contains everything you need.
36
+
37
+ ### Step 3: Targeted follow-ups only when needed
38
+ Only use additional tool calls for:
39
+ - `knowledge_search_*` — when you need deeper context on a specific CVE or system not fully covered by entity data
40
+ - `knowledge_traverse_*` — when exploring a specific entity's relationships (e.g., "what category does this system belong to?")
41
+ - `knowledge_graph_schema_*` — call ONCE at the start if you need to understand the graph structure
42
+
43
+ ### Cross-reference priority
44
+ Match by **cpe_id** first (most precise), then by **os_firmware** (e.g., a VxWorks CVE affects all VxWorks systems), then by **known_software** (e.g., an OpenSSL CVE affects all OpenSSL users), then by **vendor** and **protocol**.
45
+
46
+ ### Output guidelines
47
+ - Be specific: cite CVE IDs, vendor names, system names, CPE IDs, and severity levels
48
+ - Consider the transport sector context — which systems are affected, what protocols are involved, what the operational impact could be
49
+ - When a CVE targets an OS or library, list ALL affected transport systems (you already have them from the bulk load)
50
+ inputVariables:
51
+ - query
52
+
53
+ tools:
54
+ - knowledge:transport-ot
55
+ - knowledge:security-incidents
56
+
57
+ memory:
58
+ enabled: true
59
+ maxLines: 50
60
+
61
+ output:
62
+ format: text
63
+
64
+ publish:
65
+ enabled: true
66
+
67
+ sampleQuestions:
68
+ - "Which of our SCADA systems run VxWorks and are there any recent CVEs affecting them?"
69
+ - "Cross-reference all systems using OpenSSL with the latest security advisories"
70
+ - "Map the attack surface for our rail signaling systems by vendor and protocol"
@@ -0,0 +1,99 @@
1
+ name: web-engineer
2
+ description: Web software engineer that builds and publishes web applications using sandbox shell and htmlhost
3
+ version: "1.0.0"
4
+
5
+ llm:
6
+ name: default
7
+ temperature: 0.3
8
+
9
+ prompt:
10
+ system: |
11
+ You are an expert web software engineer. You build complete web applications and publish them live via htmlhost.
12
+
13
+ ## Tools
14
+
15
+ - **ask_user** — Ask the user a question and WAIT for their response. Always use this tool for questions
16
+ - **sandbox_file_read** — Read a file from /tmp with line numbers.
17
+ - **sandbox_file_write** — Create or overwrite a file in /tmp.
18
+ - **sandbox_file_edit** — Find and replace a unique string in a file.
19
+ - **sandbox_file_insert** — Insert new lines before or after a specific line number.
20
+ - **sandbox_file_replace_lines** — Replace a range of lines with new content.
21
+ - **sandbox_shell** — Execute shell commands in /tmp.
22
+ - **htmlhost_deploy** — Publish an HTML file to get a live URL.
23
+
24
+ ## Workflow
25
+
26
+ 1. **Clarify** — Use **ask_user** to understand what the user wants before coding.
27
+ 2. **Build** — Write a single self-contained HTML file at `/tmp/projects/<project-name>/index.html`. Inline all CSS in `<style>` and all JS in `<script>`. Use CDN links or base64 for external assets.
28
+ 3. **Publish** — Deploy `index.html` via htmlhost. Share the live URL.
29
+ 4. **Iterate** — Edit the same file, redeploy.
30
+
31
+ ## Rules
32
+
33
+ - Everything lives in ONE `index.html` file — inline styles, inline scripts.
34
+ - No build steps, no compilation, no multi-file projects.
35
+ - Keep it simple: one file in, one file deployed.
36
+
37
+ ## CDN Libraries
38
+
39
+ Pick the right tool for the job:
40
+
41
+ **Apps, dashboards, landing pages** — Tailwind CSS for layout and styling:
42
+ `<script src="https://cdn.tailwindcss.com"></script>`
43
+
44
+ **Apps with interactivity** — Alpine.js for reactive UI without a framework:
45
+ `<script src="https://cdn.jsdelivr.net/npm/alpinejs@3/dist/cdn.min.js" defer></script>`
46
+
47
+ **Charts and data viz** — Chart.js:
48
+ `<script src="https://cdn.jsdelivr.net/npm/chart.js@4/dist/chart.umd.min.js"></script>`
49
+
50
+ **3D, WebGL, games with 3D** — Three.js:
51
+ `<script src="https://cdn.jsdelivr.net/npm/three@0.170/build/three.module.min.js" type="module"></script>`
52
+
53
+ **2D games, animations, sprites** — Custom CSS + vanilla JS canvas. No framework needed.
54
+
55
+ **Icons** — Lucide:
56
+ `<script src="https://cdn.jsdelivr.net/npm/lucide@0.460/dist/umd/lucide.min.js"></script>`
57
+
58
+ **Animations and transitions** — GSAP:
59
+ `<script src="https://cdn.jsdelivr.net/npm/gsap@3/dist/gsap.min.js"></script>`
60
+
61
+ **Markdown rendering** — Marked:
62
+ `<script src="https://cdn.jsdelivr.net/npm/marked@15/marked.min.js"></script>`
63
+
64
+ Combine as needed (e.g., Tailwind + Alpine for an interactive app, Tailwind + Chart.js for a dashboard).
65
+
66
+ ## Memory
67
+
68
+ You have persistent memory. Track active projects, published URLs, and user preferences.
69
+ Check memory at session start for existing projects.
70
+
71
+ inputVariables:
72
+ - query
73
+
74
+ tools:
75
+ - builtin:ask_user
76
+ - sandbox:shell
77
+ - sandbox:file_read
78
+ - sandbox:file_write
79
+ - sandbox:file_edit
80
+ - sandbox:file_insert
81
+ - sandbox:file_replace_lines
82
+ - mcp:htmlhost
83
+ - sandbox:web_fetch
84
+ - sandbox:web_search
85
+
86
+ memory:
87
+ enabled: true
88
+ maxLines: 500
89
+
90
+ output:
91
+ format: text
92
+
93
+ sampleQuestions:
94
+ - "Build me a portfolio website with a dark theme and smooth animations"
95
+ - "Create a task manager app with local storage persistence"
96
+ - "Build a calculator app with a modern glassmorphism design"
97
+ - "Make a snake game with arrow key controls"
98
+ - "Build a tic-tac-toe game I can play against the computer"
99
+ - "Create a simple pong game vs the computer"
@@ -0,0 +1,58 @@
1
+ name: web-pilot
2
+ description: Browser agent — navigates, fills forms, clicks through pages using observe-act loop
3
+ version: "1.0.0"
4
+
5
+ llm:
6
+ name: default
7
+ temperature: 0.3
8
+
9
+ prompt:
10
+ system: |
11
+ You are a web pilot controlling a Chromium browser. Complete tasks by observing and acting one step at a time.
12
+
13
+ ## Loop: Observe → Act → Observe
14
+
15
+ 1. Navigate/observe to get page snapshot with element refs (e1, e2...)
16
+ 2. Act using refs: click({ ref: "e3" }) or type({ ref: "e5", text: "hello" })
17
+ 3. Observe to verify. Adapt if needed. Screenshot only as last resort.
18
+
19
+ ## Rules
20
+
21
+ - Use refs from latest observe output — they update each call
22
+ - Click by text when ref unavailable: click({ text: "Accept" })
23
+ - Never screenshot to verify — use observe
24
+ - Use web_search to find URLs — never guess
25
+ - Read textExcerpt in observe/navigate results first — it often has the data you need
26
+ - Use evaluate() with JS to extract structured data directly from the DOM
27
+ - Don't repeat failed tool calls — switch strategy immediately
28
+ - Prefer web_fetch for read-only pages where you just need content
29
+ inputVariables:
30
+ - task
31
+
32
+ tools:
33
+ - sandbox:browser_observe
34
+ - sandbox:browser_navigate
35
+ - sandbox:browser_click
36
+ - sandbox:browser_type
37
+ - sandbox:browser_content
38
+ - sandbox:browser_evaluate
39
+ - sandbox:browser_screenshot
40
+ - sandbox:web_search
41
+ # - sandbox:web_fetch
42
+
43
+ skills:
44
+ - web-pilot
45
+
46
+ memory: true
47
+
48
+ publish:
49
+ enabled: true
50
+ password: "test"
51
+
52
+ output:
53
+ format: text
54
+
55
+ sampleQuestions:
56
+ - "Go to GitHub trending and list today's top 5 repositories with their descriptions"
57
+ - "Search for 'best pasta recipe', open the top result, and extract the ingredients list"
58
+ - "Navigate to weather.com and tell me the 5-day forecast for London"
@@ -0,0 +1,11 @@
1
+ Chinook Database
2
+ --------------------------------------
3
+ Copyright (c) 2008-2024 Luis Rocha
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
6
+ documentation files (the "Software"), to deal in the Software without restriction, including without limitation
7
+ the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
8
+ to permit persons to whom the Software is furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
11
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,138 @@
1
+ name: music-store
2
+ description: Music store catalog and customer purchases — artists, albums, tracks, genres, and who bought what
3
+
4
+ source:
5
+ type: database
6
+ connectionString: sqlite://knowledge/music-store/musicstore.sqlite
7
+ query: |
8
+ SELECT
9
+ t.TrackId AS track_id,
10
+ t.Name AS track_name,
11
+ COALESCE(t.Composer, '') AS composer,
12
+ t.Milliseconds AS duration_ms,
13
+ t.UnitPrice AS price,
14
+ a.AlbumId AS album_id,
15
+ a.Title AS album_title,
16
+ ar.ArtistId AS artist_id,
17
+ ar.Name AS artist_name,
18
+ g.GenreId AS genre_id,
19
+ g.Name AS genre_name,
20
+ NULL AS customer_id,
21
+ NULL AS customer_name,
22
+ NULL AS customer_country,
23
+ t.Name || ' by ' || COALESCE(ar.Name, 'Unknown')
24
+ || ' on album ' || a.Title
25
+ || ' [' || COALESCE(g.Name, 'Unknown') || ']'
26
+ || ' (' || (t.Milliseconds / 60000) || ':' || printf('%02d', (t.Milliseconds % 60000) / 1000) || ')'
27
+ || CASE WHEN t.Composer IS NOT NULL AND t.Composer <> '' THEN '. Composed by ' || t.Composer ELSE '' END
28
+ AS content
29
+ FROM Track t
30
+ JOIN Album a ON t.AlbumId = a.AlbumId
31
+ JOIN Artist ar ON a.ArtistId = ar.ArtistId
32
+ LEFT JOIN Genre g ON t.GenreId = g.GenreId
33
+
34
+ UNION ALL
35
+
36
+ SELECT
37
+ t.TrackId,
38
+ t.Name,
39
+ COALESCE(t.Composer, ''),
40
+ t.Milliseconds,
41
+ il.UnitPrice,
42
+ a.AlbumId,
43
+ a.Title,
44
+ ar.ArtistId,
45
+ ar.Name,
46
+ g.GenreId,
47
+ g.Name,
48
+ c.CustomerId,
49
+ c.FirstName || ' ' || c.LastName,
50
+ c.Country,
51
+ c.FirstName || ' ' || c.LastName || ' (' || c.Country || ')'
52
+ || ' purchased ' || t.Name || ' by ' || COALESCE(ar.Name, 'Unknown')
53
+ || ' from album ' || a.Title
54
+ || ' [' || COALESCE(g.Name, 'Unknown') || ']'
55
+ AS content
56
+ FROM InvoiceLine il
57
+ JOIN Invoice i ON il.InvoiceId = i.InvoiceId
58
+ JOIN Customer c ON i.CustomerId = c.CustomerId
59
+ JOIN Track t ON il.TrackId = t.TrackId
60
+ JOIN Album a ON t.AlbumId = a.AlbumId
61
+ JOIN Artist ar ON a.ArtistId = ar.ArtistId
62
+ LEFT JOIN Genre g ON t.GenreId = g.GenreId
63
+ contentColumn: content
64
+ metadataColumns:
65
+ - track_id
66
+ - track_name
67
+ - composer
68
+ - album_id
69
+ - album_title
70
+ - artist_id
71
+ - artist_name
72
+ - genre_id
73
+ - genre_name
74
+ - customer_id
75
+ - customer_name
76
+ - customer_country
77
+
78
+ loader:
79
+ type: text
80
+
81
+ splitter:
82
+ type: character
83
+ chunkSize: 500
84
+ chunkOverlap: 0
85
+
86
+ embedding: default
87
+
88
+ search:
89
+ defaultK: 10
90
+
91
+ graph:
92
+ directMapping:
93
+ entities:
94
+ - type: Artist
95
+ idColumn: artist_id
96
+ nameColumn: artist_name
97
+ properties: []
98
+ - type: Album
99
+ idColumn: album_id
100
+ nameColumn: album_title
101
+ properties: []
102
+ - type: Track
103
+ idColumn: track_id
104
+ nameColumn: track_name
105
+ properties:
106
+ - composer
107
+ - duration_ms
108
+ - price
109
+ - type: Genre
110
+ idColumn: genre_id
111
+ nameColumn: genre_name
112
+ properties: []
113
+ - type: Customer
114
+ idColumn: customer_id
115
+ nameColumn: customer_name
116
+ properties:
117
+ - customer_country
118
+ relationships:
119
+ - type: PERFORMED_BY
120
+ source: Album
121
+ target: Artist
122
+ sourceIdColumn: album_id
123
+ targetIdColumn: artist_id
124
+ - type: ON_ALBUM
125
+ source: Track
126
+ target: Album
127
+ sourceIdColumn: track_id
128
+ targetIdColumn: album_id
129
+ - type: HAS_GENRE
130
+ source: Track
131
+ target: Genre
132
+ sourceIdColumn: track_id
133
+ targetIdColumn: genre_id
134
+ - type: PURCHASED
135
+ source: Customer
136
+ target: Track
137
+ sourceIdColumn: customer_id
138
+ targetIdColumn: track_id
@@ -1,21 +1,21 @@
1
- employee_id,employee_name,title,department_id,department_name,manager_id,manager_name,location,hire_date,status,review_period,rating,strengths,areas_for_growth,summary
2
- E001,Sarah Chen,Chief Executive Officer,D01,Executive,,,,2018-03-15,active,2025-H1,5,Visionary leadership and strategic planning,Delegation to new VPs,Exceptional year driving company growth from 50 to 120 employees. Led Series B fundraising and established international partnerships.
3
- E002,James Rodriguez,VP of Engineering,D02,Engineering,E001,Sarah Chen,San Francisco,2019-01-10,active,2025-H1,5,Technical architecture and team scaling,"Cross-functional communication, documentation",Built engineering org from 8 to 35 engineers. Architected migration to microservices reducing latency by 40%.
4
- E003,Priya Patel,VP of Product,D03,Product,E001,Sarah Chen,San Francisco,2019-06-01,active,2025-H1,4,Customer empathy and roadmap prioritization,Data-driven decision making,Successfully launched 3 major product lines. Needs to leverage analytics more in feature prioritization.
5
- E004,Marcus Thompson,VP of Sales,D04,Sales,E001,Sarah Chen,New York,2020-02-01,active,2025-H1,4,Relationship building and enterprise deals,Pipeline forecasting accuracy,Exceeded revenue targets by 22%. Enterprise segment grew 45% YoY. Forecasting still needs improvement.
6
- E005,Lisa Wang,VP of People,D05,People & Culture,E001,Sarah Chen,San Francisco,2020-09-01,active,2025-H1,4,Culture building and talent acquisition,Retention strategy for senior engineers,Reduced time-to-hire by 30%. Employee satisfaction scores at 4.2/5. Attrition in senior engineering needs attention.
7
- E006,David Kim,Senior Staff Engineer,D02,Engineering,E002,James Rodriguez,San Francisco,2019-03-20,active,2025-H1,5,System design and mentoring junior engineers,Public speaking and conference presence,Led redesign of payment processing system handling $2M daily transactions. Mentored 6 engineers to promotion.
8
- E007,Anna Kowalski,Staff Engineer,D02,Engineering,E002,James Rodriguez,Remote,2020-01-15,active,2025-H1,4,Backend performance optimization,Frontend skills and full-stack contribution,Optimized database queries reducing P99 latency from 800ms to 120ms. Should broaden full-stack capabilities.
9
- E008,Carlos Mendez,Senior Engineer,D02,Engineering,E006,David Kim,San Francisco,2021-04-01,active,2025-H1,4,API design and testing practices,Ownership of larger projects independently,Designed REST API v3 adopted by 200+ integrators. Ready for staff-level scope with more independent ownership.
10
- E009,Emily Foster,Senior Engineer,D02,Engineering,E006,David Kim,Remote,2021-07-15,active,2025-H1,3,Code quality and thorough reviews,Delivery speed and prioritization,Excellent code quality but missed 2 sprint deadlines. Needs to balance perfectionism with delivery velocity.
11
- E010,Raj Gupta,Engineer,D02,Engineering,E007,Anna Kowalski,San Francisco,2022-06-01,active,2025-H1,4,Quick learner with strong algorithms background,Production debugging and operational skills,Shipped 3 features in first year. Strong CS fundamentals. Needs more exposure to production operations and on-call.
12
- E011,Sophie Martin,Senior Product Manager,D03,Product,E003,Priya Patel,San Francisco,2020-03-01,active,2025-H1,4,User research and feature specification,Stakeholder management across engineering teams,Led mobile app redesign increasing DAU by 35%. Should improve collaboration with engineering leads on technical constraints.
13
- E012,Tom Bradley,Product Manager,D03,Product,E003,Priya Patel,Remote,2021-11-01,active,2025-H1,3,Competitive analysis and market research,Defining measurable success metrics for features,Good market intuition but feature specs lack clear KPIs. Needs to define measurable outcomes before development starts.
14
- E013,Rachel Green,Enterprise Account Executive,D04,Sales,E004,Marcus Thompson,New York,2020-08-01,active,2025-H1,5,Closing complex enterprise deals,Mentoring junior sales reps,Closed 3 deals over $500K including the Globex contract. Top performer in the sales organization.
15
- E014,Michael Scott,Account Executive,D04,Sales,E004,Marcus Thompson,New York,2021-03-15,active,2025-H1,3,Enthusiasm and client rapport,Following structured sales methodology and CRM discipline,Strong relationship builder but pipeline management is inconsistent. CRM data entry needs significant improvement.
16
- E015,Nina Petrov,Sales Development Rep,D04,Sales,E013,Rachel Green,New York,2022-09-01,active,2025-H1,4,Cold outreach and lead qualification,Transitioning from SDR to AE conversations,Generated 45 qualified opportunities in H1. Shows strong AE potential and is ready for promotion consideration.
17
- E016,Alex Rivera,Senior Designer,D03,Product,E003,Priya Patel,San Francisco,2020-05-15,active,2025-H1,4,UI/UX design and design system maintenance,User research methodology and testing,Redesigned the component library saving 200+ engineering hours. Should deepen skills in user testing and research.
18
- E017,Jordan Lee,DevOps Engineer,D02,Engineering,E002,James Rodriguez,Remote,2021-01-10,active,2025-H1,4,CI/CD pipelines and infrastructure automation,Security best practices and compliance,Reduced deployment time from 45min to 8min. Built monitoring dashboards adopted by all teams. Should pursue security certifications.
19
- E018,Maria Santos,People Operations Manager,D05,People & Culture,E005,Lisa Wang,San Francisco,2021-06-01,active,2025-H1,4,Process improvement and employee onboarding,Conflict resolution and difficult conversations,Revamped onboarding reducing ramp-up time by 25%. Needs coaching on handling performance improvement plans.
20
- E019,Chris Evans,Junior Engineer,D02,Engineering,E007,Anna Kowalski,San Francisco,2023-01-15,active,2025-H1,3,Eagerness to learn and strong collaboration,Code architecture and design patterns,Good progress for first year. Completes assigned tasks well. Needs to develop ability to break down larger problems independently.
21
- E020,Diana Torres,Marketing Manager,D04,Sales,E004,Marcus Thompson,Remote,2021-08-01,active,2025-H1,4,Content strategy and demand generation,Marketing analytics and attribution modeling,Grew inbound leads by 60% through content marketing. Should develop stronger analytics capabilities for ROI measurement.
1
+ employee_id,employee_name,title,department_id,department_name,manager_id,manager_name,location,hire_date,status,review_period,rating,strengths,areas_for_growth,summary,email,phone,ssn,salary,date_of_birth,home_address
2
+ E001,Sarah Chen,Chief Executive Officer,D01,Executive,,,,2018-03-15,active,2025-H1,5,Visionary leadership and strategic planning,Delegation to new VPs,Exceptional year driving company growth from 50 to 120 employees. Led Series B fundraising and established international partnerships.,sarah.chen@orchacorp.com,415-555-0101,319-42-8817,285000,1979-06-12,"742 Presidio Ave, San Francisco, CA 94115"
3
+ E002,James Rodriguez,VP of Engineering,D02,Engineering,E001,Sarah Chen,San Francisco,2019-01-10,active,2025-H1,5,Technical architecture and team scaling,"Cross-functional communication, documentation",Built engineering org from 8 to 35 engineers. Architected migration to microservices reducing latency by 40%.,james.rodriguez@orchacorp.com,415-555-0102,284-61-3390,245000,1984-11-03,"1580 Clay St, San Francisco, CA 94109"
4
+ E003,Priya Patel,VP of Product,D03,Product,E001,Sarah Chen,San Francisco,2019-06-01,active,2025-H1,4,Customer empathy and roadmap prioritization,Data-driven decision making,Successfully launched 3 major product lines. Needs to leverage analytics more in feature prioritization.,priya.patel@orchacorp.com,415-555-0103,523-18-9044,235000,1986-02-28,"2901 Sacramento St, San Francisco, CA 94115"
5
+ E004,Marcus Thompson,VP of Sales,D04,Sales,E001,Sarah Chen,New York,2020-02-01,active,2025-H1,4,Relationship building and enterprise deals,Pipeline forecasting accuracy,Exceeded revenue targets by 22%. Enterprise segment grew 45% YoY. Forecasting still needs improvement.,marcus.thompson@orchacorp.com,212-555-0104,147-80-5523,240000,1982-09-17,"315 W 70th St Apt 4B, New York, NY 10023"
6
+ E005,Lisa Wang,VP of People,D05,People & Culture,E001,Sarah Chen,San Francisco,2020-09-01,active,2025-H1,4,Culture building and talent acquisition,Retention strategy for senior engineers,Reduced time-to-hire by 30%. Employee satisfaction scores at 4.2/5. Attrition in senior engineering needs attention.,lisa.wang@orchacorp.com,415-555-0105,638-29-7741,220000,1985-04-05,"1122 Fillmore St, San Francisco, CA 94115"
7
+ E006,David Kim,Senior Staff Engineer,D02,Engineering,E002,James Rodriguez,San Francisco,2019-03-20,active,2025-H1,5,System design and mentoring junior engineers,Public speaking and conference presence,Led redesign of payment processing system handling $2M daily transactions. Mentored 6 engineers to promotion.,david.kim@orchacorp.com,415-555-0106,471-53-6628,195000,1988-07-22,"560 Haight St Apt 3, San Francisco, CA 94117"
8
+ E007,Anna Kowalski,Staff Engineer,D02,Engineering,E002,James Rodriguez,Remote,2020-01-15,active,2025-H1,4,Backend performance optimization,Frontend skills and full-stack contribution,Optimized database queries reducing P99 latency from 800ms to 120ms. Should broaden full-stack capabilities.,anna.kowalski@orchacorp.com,503-555-0107,362-44-1187,180000,1990-12-14,"4428 NE Glisan St, Portland, OR 97213"
9
+ E008,Carlos Mendez,Senior Engineer,D02,Engineering,E006,David Kim,San Francisco,2021-04-01,active,2025-H1,4,API design and testing practices,Ownership of larger projects independently,Designed REST API v3 adopted by 200+ integrators. Ready for staff-level scope with more independent ownership.,carlos.mendez@orchacorp.com,415-555-0108,519-67-2243,165000,1992-03-30,"783 Valencia St Apt 2, San Francisco, CA 94110"
10
+ E009,Emily Foster,Senior Engineer,D02,Engineering,E006,David Kim,Remote,2021-07-15,active,2025-H1,3,Code quality and thorough reviews,Delivery speed and prioritization,Excellent code quality but missed 2 sprint deadlines. Needs to balance perfectionism with delivery velocity.,emily.foster@orchacorp.com,720-555-0109,283-71-5596,160000,1991-08-19,"1247 Pearl St Apt 5, Boulder, CO 80302"
11
+ E010,Raj Gupta,Engineer,D02,Engineering,E007,Anna Kowalski,San Francisco,2022-06-01,active,2025-H1,4,Quick learner with strong algorithms background,Production debugging and operational skills,Shipped 3 features in first year. Strong CS fundamentals. Needs more exposure to production operations and on-call.,raj.gupta@orchacorp.com,415-555-0110,612-38-9907,135000,1996-01-11,"2250 Market St Apt 8, San Francisco, CA 94114"
12
+ E011,Sophie Martin,Senior Product Manager,D03,Product,E003,Priya Patel,San Francisco,2020-03-01,active,2025-H1,4,User research and feature specification,Stakeholder management across engineering teams,Led mobile app redesign increasing DAU by 35%. Should improve collaboration with engineering leads on technical constraints.,sophie.martin@orchacorp.com,415-555-0111,745-22-3318,175000,1989-05-26,"1901 Union St, San Francisco, CA 94123"
13
+ E012,Tom Bradley,Product Manager,D03,Product,E003,Priya Patel,Remote,2021-11-01,active,2025-H1,3,Competitive analysis and market research,Defining measurable success metrics for features,Good market intuition but feature specs lack clear KPIs. Needs to define measurable outcomes before development starts.,tom.bradley@orchacorp.com,312-555-0112,458-93-1176,145000,1993-10-08,"3547 N Clark St Apt 2F, Chicago, IL 60657"
14
+ E013,Rachel Green,Enterprise Account Executive,D04,Sales,E004,Marcus Thompson,New York,2020-08-01,active,2025-H1,5,Closing complex enterprise deals,Mentoring junior sales reps,Closed 3 deals over $500K including the Globex contract. Top performer in the sales organization.,rachel.green@orchacorp.com,212-555-0113,391-56-8842,170000,1987-12-01,"225 E 57th St Apt 12A, New York, NY 10022"
15
+ E014,Michael Scott,Account Executive,D04,Sales,E004,Marcus Thompson,New York,2021-03-15,active,2025-H1,3,Enthusiasm and client rapport,Following structured sales methodology and CRM discipline,Strong relationship builder but pipeline management is inconsistent. CRM data entry needs significant improvement.,michael.scott@orchacorp.com,212-555-0114,267-48-5531,130000,1990-04-15,"482 W 43rd St Apt 6C, New York, NY 10036"
16
+ E015,Nina Petrov,Sales Development Rep,D04,Sales,E013,Rachel Green,New York,2022-09-01,active,2025-H1,4,Cold outreach and lead qualification,Transitioning from SDR to AE conversations,Generated 45 qualified opportunities in H1. Shows strong AE potential and is ready for promotion consideration.,nina.petrov@orchacorp.com,212-555-0115,184-72-6694,95000,1997-07-20,"159 E 3rd St Apt 4D, New York, NY 10009"
17
+ E016,Alex Rivera,Senior Designer,D03,Product,E003,Priya Patel,San Francisco,2020-05-15,active,2025-H1,4,UI/UX design and design system maintenance,User research methodology and testing,Redesigned the component library saving 200+ engineering hours. Should deepen skills in user testing and research.,alex.rivera@orchacorp.com,415-555-0116,843-15-2279,155000,1991-11-30,"1645 Pacific Ave Apt 7, San Francisco, CA 94109"
18
+ E017,Jordan Lee,DevOps Engineer,D02,Engineering,E002,James Rodriguez,Remote,2021-01-10,active,2025-H1,4,CI/CD pipelines and infrastructure automation,Security best practices and compliance,Reduced deployment time from 45min to 8min. Built monitoring dashboards adopted by all teams. Should pursue security certifications.,jordan.lee@orchacorp.com,206-555-0117,572-39-4481,155000,1993-06-09,"831 NW Market St Apt 5, Seattle, WA 98107"
19
+ E018,Maria Santos,People Operations Manager,D05,People & Culture,E005,Lisa Wang,San Francisco,2021-06-01,active,2025-H1,4,Process improvement and employee onboarding,Conflict resolution and difficult conversations,Revamped onboarding reducing ramp-up time by 25%. Needs coaching on handling performance improvement plans.,maria.santos@orchacorp.com,415-555-0118,926-41-3357,130000,1994-02-14,"2380 California St, San Francisco, CA 94115"
20
+ E019,Chris Evans,Junior Engineer,D02,Engineering,E007,Anna Kowalski,San Francisco,2023-01-15,active,2025-H1,3,Eagerness to learn and strong collaboration,Code architecture and design patterns,Good progress for first year. Completes assigned tasks well. Needs to develop ability to break down larger problems independently.,chris.evans@orchacorp.com,415-555-0119,715-28-8863,105000,1998-09-03,"440 Divisadero St Apt 2, San Francisco, CA 94117"
21
+ E020,Diana Torres,Marketing Manager,D04,Sales,E004,Marcus Thompson,Remote,2021-08-01,active,2025-H1,4,Content strategy and demand generation,Marketing analytics and attribution modeling,Grew inbound leads by 60% through content marketing. Should develop stronger analytics capabilities for ROI measurement.,diana.torres@orchacorp.com,305-555-0120,438-66-1192,140000,1992-08-27,"1023 Brickell Ave Apt 3102, Miami, FL 33131"
@@ -36,6 +36,10 @@ graph:
36
36
  - rating
37
37
  - strengths
38
38
  - areas_for_growth
39
+ - email
40
+ - phone
41
+ - salary
42
+ - date_of_birth
39
43
  relationships:
40
44
  - type: WORKS_IN
41
45
  source: Employee
@@ -44,6 +44,9 @@ embedding: default
44
44
  search:
45
45
  defaultK: 5
46
46
 
47
+ reindex:
48
+ schedule: "0 * * * *" # Re-index every hour
49
+
47
50
  graph:
48
51
  directMapping:
49
52
  entities: