Skip to main content
Eve builds, alters, deploys, and monitors specialized data agents; manages missions & tasks; runs read-focused discovery/analysis; and coordinates artifacts, documentation, and collaboration across the platform.
Eve follows the same deployment-wide tool policies as other agents; see Workspace Policies.

Purpose

Orchestrate the lifecycle of data agents, manage missions/tasks, and coordinate safe data operations & collaboration.

Scope

Agent lifecycle, mission/task management, metadata discovery & safe queries, docs & artifacts indexing/exports/versioning, Slack/Sheets collaboration.

Design Goals

Deterministic & auditable operations, safety-first defaults for prod, reproducible & configurable workflows.
On Try Me and other demo-mode instances (demo.enabled or DEMO_MODE), Eve receives additional Try Me guidance in her rendered instructions, including when to mention booking a full deployment and when to call record_demo_interest after a user asks to connect with sales. The contact URL comes from demo.sales_url (the same booking link used by budget-exceeded UI and conversion cards). Chat-level budget caps, private default thread visibility, and slot limits for demo mode are described in Chat and Threads.
  • Create & activate a specialized data agent with a tailored tool set
  • Stand up a mission with tasks, dependencies, and cross-agent assignments
  • Find the status of an existing checked migration project and continue it from chat; see Migrate data and pipelines
  • For how Eve relays completed Prover results to people, see Reporting a completed run
  • Run read-only data discovery and summarize findings with safe sampling
  • Index project documentation and answer grounded questions
  • Export deliverables to Sheets/files and notify stakeholders in Slack
  • Verify a Genesis App or live web workflow by opening the page, clicking through the UI, and capturing an updated snapshot or screenshot
  • Prepare support-ready thread export bundles for Genesis support, including a Markdown bug report and, when enabled by admins, server.log, then attach those bundles to Genesis support reports and either auto-submit them or hand back manual delivery options based on the recorded delivery outcome
  • Install a blueprint ZIP from chat uploads into the local Blueprint Library or a managed git-backed blueprint repo, then promote a local install later without re-uploading the ZIP
    Start with a minimal tool set and expand only when a mission requires it.
Connections & access
  • Connected databases (e.g., Snowflake) with read permissions
  • Per-agent connection profiles on Agents → [agent] → Data Access when you need to scope which saved connections an agent (including Eve) can reach. The read_only and read_modify behavior is defined in Access intent in Connections.
  • Context Graph scans for the systems and assets Eve should reason about in detail
  • Optional: Google Drive service account for Sheets/Docs
  • Slack activation and optional allow-list
  • Optional Microsoft Teams (Bot Framework) activation per bot on Agents → [bot] → Teams; on SPCS, Config → Microsoft Teams external access must be assigned first. Operators can disable all Bot Framework Teams traffic server-wide with teams.enabled — inbound messages and proactive sends are refused immediately when that switch is off.
  • Optional web search key (for web queries where allowed)
Workspace
  • Default schema: GENESIS_DATA_AGENTS.EVE_WORKSPACE
  • Default stage: GENESIS_DATA_AGENTS.EVE_WORKSPACE.MY_STAGE
  • Mission structure: clear objectives, tasks, owners, and dependencies
Keep access read-only by default. Promote to write only for workspace outputs and with explicit confirmation.
1

Data agent lifecycle management

Create a new agent with precise instructions and durable default tool groups (set_bot_context_defaults); activate extra groups per thread with manage_context(action="ADD_CONTEXT", ...) when needed; activate on Slack (open or allow-listed) or Teams (Bot Framework credentials on the agent Teams tab); update instructions and defaults as needs evolve. For keeping default-skill text through compression, see Bot Management Tools.
2

Mission & task management

Create missions, define tasks, wire dependencies, assign agents; track status, attach artifacts, summarize outcomes; maintain an audit trail. For transient sub-agent work, use handoff to an existing agent rather than make_baby_bot, which creates a permanent registry agent.
3

Data discovery & analysis

Enumerate db/schema/table metadata; call search_data_context(...) first when users ask about data assets, tables, pipelines, jobs, or other indexed objects in the Context Graph; search the Context Graph for relevant tables, dashboards, notebooks, repositories, and Genesis objects; run safe, read-focused queries with LIMITs & optional controlled sampling; write intermediate results to the workspace on request. When a user references a node from chat with @, Eve receives the resolved node context automatically. That attached context can include the node type, source system, summary, columns, neighbors, and DDL when the asset carries one. If a referenced node arrives without attached context, or Eve still needs full indexed content such as DDL or source text for a table, view, or procedure, it should call lineage_action(action="GET_INDEX_DOCUMENT", qualified_name="..."). Use lineage_action(action="GET_INDEX_STATS") when diagnosing whether semantic search is working; always report its embedding_status_reason verbatim. Use compact GET_NODE when Eve only needs identity, summary, or neighbor pointers. When a user asks where data comes from, how a table is populated, or what feeds a dashboard or report, Eve should start with lineage_action(action="GET_UPSTREAM", qualified_name="...") and fall back to thread-history recall only if lineage has no relevant upstream edges. For external systems without a native scanner, Eve can publish extracted metadata through the custom scanner workflow.
4

Documentation & artifacts

Index data dictionaries/ERDs/specs; answer grounded questions; export tables to CSV/XLSX/Sheets; persist outputs in file storage; version artifacts with git. Use document indexes for uploaded documentation and mission-specific collections, use search_genesis_docs(...) and read_genesis_doc(...) for Genesis platform documentation (not for user knowledge-base documents), use search_knowledge_bases(...) and read_knowledge_base_doc(...) for documents the user created, uploaded, or stored in assigned knowledge bases, use the Context Graph for user data assets such as tables, dashboards, notebooks, and repositories, and use the Team Wiki when Eve needs a graph-backed page with schema, metadata, lineage, and team learnings for one scanned asset. When search_data_context(...) returns kind="wiki_learning" results, Eve should read learning_text directly and use wiki_read(qualified_name=result["anchor_qn"]) if it needs the full Team Wiki page for that anchor. When a regular entity hit includes learnings_count greater than 0, Eve should review the returned top_learnings headlines (up to 3) and follow learnings_ref with wiki_read(...) before answering when any headline is relevant, so saved caveats, conventions, data quality warnings, and historical context are reflected in the response. When wiki.write_enabled is true in AppConfig (see Advanced Settings → Team Wiki / Librarian settings) and a user shares authored domain knowledge that cannot be derived from the data itself, Eve should resolve the correct asset with search_data_context(...), briefly confirm it is saving the learning, and persist it with wiki_write(...). When a user references prior SQL work such as “that report”, “the analysis we did yesterday”, or a table/view Eve may have queried before, Eve should call find_past_queries(...) before running fresh SQL so it can reuse matched_queries, apply relevant_conventions, and review prior_concerns. Do not call find_past_queries(...) merely because the request names a non-SQL artifact (blueprint, app, file, dashboard) or to locate, upload, replace, or install one — use that artifact’s own tool group instead (manage_context(action="ADD_CONTEXT", ...) when needed). Treat those prior_concerns as context-specific rejected approaches, not blanket bans on the underlying table or view. If cross-thread recall returns a plausible candidate, Eve should open that thread before narrowing the search further. For prior SQL, tool outputs, artifact links, reports, or other execution details, it should inspect the candidate with read_thread(thread_id="...", include_tool_calls=True) so the recall includes the relevant tool requests and outputs rather than only assistant prose. Before Eve concludes that required context is missing, it should first check current-thread recall with manage_thread_memory(action="SEARCH_MESSAGES", ...), cross-thread history with search_threads(...), and then the most relevant documentation or data-context search surface for the request. When Eve or another agent should use indexed documents as reusable agent knowledge, register the bundle with Knowledge Base Admin Tools, then assign that knowledge_base_id with Bot Management Tools. If find_past_queries(...) comes back empty, or a broader search scope is unavailable, Eve should fall back to search_threads(...) for wider cross-thread recall before starting from scratch.
5

Collaboration & operations

Post progress in Slack, create review Sheets, attach files to missions/tasks; configure/monitor background jobs; coordinate specialized agents (field mapping, data quality, pipelines).
Every mission maintains status, history, and linked artifacts for traceability.
Planning checklist
  • Name & purpose: specialization + boundaries of responsibility
  • Instructions: concise, operational guidance (inputs, outputs, constraints)
  • Default tool groups: start minimal; add only what’s necessary (durable defaults via set_bot_context_defaults; per-thread activation via manage_context)
  • Slack access: open vs allow-listed; channels to operate in
Recommended tool grants (adjust as needed)
project_manager_tools, data_connector_tools, slack_tools, artifact_manager_tools, google_drive_tools, git_and_file_tools, image_tools, web_access_tools, browser_tools, document_index_tools, knowledge_base_admin_tools, file_manager_tools, handoff
Add snowflake_tools for warehouse queries; harvester_tools for metadata harvesting; manage_tests_tools for CI-style test orchestration.
Parameter confirmation (prior to creation)
  • Agent name & short description (up to 500 characters; shown in agent lists and the Overview hero)
  • Agent id (bot_id) when supplied: case-sensitive and unique across all agents (Eve and eve are different). Genesis rejects a new id that differs from an existing agent only by letter case because thread storage paths would collide on case-insensitive filesystems.
  • Display name (bot_name) is the label shown in agent lists and chat headers. Dashboard URLs, chat routing, bot-scoped APIs, and RBAC admin routes (/api/rbac/agents/{bot_id}/...) use the exact stored bot_id. Renaming an agent updates its display name but not its bot_id; display names and case variants are not accepted as identifiers.
  • Instructions text
  • Initial tool set
  • Initial RBAC roles: at least one valid role is required when Eve creates a new agent from chat. Use existing role names only — built-in roles are user (standard access; default for most new agents) and admin (elevated access). Do not invent names such as agent or basic; unknown roles are rejected before the agent row is created. Review available roles in Users and Roles.
  • Context defaults: use the validation guidance in Data Agent Creation Tools.
  • Slack activation: on/off, access policy
Post-creation steps
  • Validate instructions; run a quick capability check
  • Agent creation and per-agent management follow the RBAC rules in Agents Center and Skills.
  • Delete Agent now deactivates the agent instead of hard-removing it. At delete time, admins can keep the agent’s threads with the deactivated record or move them to another active agent. Threads kept with the deactivated agent stay available only from the admin-only Deactivated Agents recovery view and remain out of normal search and memory until they are reassigned. Genesis refuses to deactivate or delete the last active agent holding manage_agents, and refuses to delete built-in Adam or Eve (they are recreated on restart). Grant manage_agents to another active agent first when you need to retire the current manager.
  • Open the agent in Agents Center and Skills to review tools, assigned knowledge, access, and model defaults. The same Agent Center tabs are also one click away from the agent row menu in the chat sidebar. Genesis hides management tabs that the current user cannot access: Knowledge requires manage_agents or manage_document_indexes, Access requires manage_users, and LLM requires manage_agents. The Tools tab is the source of truth for default thread-start tool groups and tool_access_mode / tool_access_list; legacy AVAILABLE_TOOLS data is migrated once and is not the ongoing control surface. On Tools and Skills, the search box filters the loaded catalog by substring on each entry’s name, description, and tags.
  • When you open Eve herself in Agents Center and Skills, structured editing keeps the free-text field scoped to Eve’s Persona and surfaces Eve-specific instructions plus Shared instructions as toggleable blocks. If Eve is still on a legacy full-prompt customization from an older deployment, use Reset instructions once to restore the default persona and return her to the structured layout. Later resets keep Eve’s current block toggles.
  • For custom agents that Eve creates, the edit page also exposes Shared instructions toggles. These optional Genesis guidance blocks stay enabled unless you disable them and now include Progressive tool descriptions, Short-term checklist protocol, Mission/blueprint question protocol, Database query result viewers, Genesis download link formats, and Long-thread compression awareness. See Structured question options for how the mission/blueprint question protocol guides questions.
  • Copy Agent creates a custom agent too. When you copy Eve or Adam, Genesis pre-fills the new instructions field with that built-in starter text (default persona plus built-in dynamic instruction sections), then keeps the copy on the normal custom-agent path with only Shared instructions toggles in create mode.
  • Optionally deploy to Slack and set the access list
  • Slack activation refreshes the live Slack runtime in place, so a new or updated agent can come online without a full Genesis restart
  • Use Default skills (thread start) for reusable startup context: Genesis auto-injects that skill’s SKILL.md into each new thread instead of making users restate the same setup every time
  • In the shared skills catalog, skills from a managed Git source expose Edit (workspace modal on a feature branch) and Push to repo for MR/PR review on the connected Git provider (GitHub, GitLab, or Bitbucket). Skills that ship with Genesis stay read-only, so re-import a copy under a new name if you need to customize one.
  • Document the agent in the docs site and link to the missions it supports
Keep a small validation suite (sample prompts/queries) to sanity-check each new or updated agent before enabling it broadly.
When the estate ruling overlay is enabled, Genesis also registers the built-in Court-Attorney agent (Court-Attorney) — an investigative clerk for Adjudication Court dockets with read-only estate access and no ruling authority. See Court-Attorney Agent.
All outputs are auditable and linked back to missions/tasks for end-to-end lineage of work.
Typically used by Eve
  • Adjudicator tools (start and inspect independent, reproduce-first triage of completed comparison findings; the built-in Prover Adjudicator submits verdicts through its private tool group, and Eve does not submit them)
  • make_baby_bot (create agents; inspect or replace assigned knowledge bases; read or update context defaults and capability policy via get_bot_context_defaults / set_bot_context_defaults; publish portable agent.yaml definitions with agent_management — EXPORT_PREVIEW / EXPORT_COMMIT / PUSH_TO_REPO — when the operator has manage_agents and manage_repos)
  • project_manager_tools (missions, tasks, dependencies, status, history, and _blueprint_tool blueprint execution and managed install/promotion workflows)
  • data_connector_tools, snowflake_tools (metadata discovery, read-focused queries)
  • context_tools (search Genesis product docs, search Context Graph data assets, recall prior validated SQL work, manage agent context, and inspect panel-aligned thread-memory status, compression history, or recovery options)
  • wiki_tools (search, browse, and read graph-backed Team Wiki pages for scanned assets, and when wiki.write_enabled is true, save authored learnings with wiki_write)
  • document_index_tools (build/search uploaded or mission-specific document collections; propose and push Git-backed KB markdown with propose_kb_edit / open_kb_pull_request)
  • knowledge_base_admin_tools (register, inspect, or delete reusable knowledge bases built from document indexes)
  • file_manager_tools, artifact_manager_tools (persist/share outputs)
  • google_drive_tools (Sheets/Docs collaboration)
  • git_action (versioning of specs, notebooks, docs)
  • blueprint_creation (create blueprints from successful threads and update existing ones through preview/apply edits)
  • slack_tools (updates, reviews, notifications)
  • web_access_tools (read web pages, call arbitrary APIs, use connection-backed provider APIs such as GitLab /api/v4/..., and download files when allowed)
  • browser_tools (interactive web apps, UI validation, and Genesis App walkthroughs)
  • genesis_enhancement_tools (create support or enhancement reports, auto-submit CREATE_REPORT when the deployment has a receiver, attach thread-export artifacts, surface actual delivery status plus manual bundle fallbacks, and sync feedback)
  • GenesisAuditor (organization-structure reviews)
  • handoff (coordinate specialized agents)
  • harvester_tools (metadata harvesting controls)
  • genesis_job_tools, system_stats_tools (background jobs & system info)
Use web_access_tools for retrieval-focused work such as page reads, arbitrary API calls, connection-backed provider API calls, and downloads. Use browser_tools when Eve needs to navigate a live UI, click controls, type into fields, or verify the current page state.
Grant only the least privilege needed for the mission at hand. Review tool grants during post-mortems.
  • Read-first on production data; use LIMITs & narrow scans
  • For totals, sums, averages, percentages, and other derived figures from query or tool results, use a query or code step rather than arithmetic in the reply, and show or cite that step’s result. To total or sum a column across saved query results, use _total_query_results with their query_ids and the column. That total does not show that a migration or cutover is complete; start with plan_estate_comparison for that. If no query or code step is available in the session, report a figure only when it appears as a value in a tool result; otherwise omit it and say that computing it needs a query or code step.
  • Writes only to the workspace schema unless explicitly requested
  • Confirmation required before destructive/irreversible actions
  • On deployments with GENESIS_SAFETY_DISPOSABLE_ESTATE_MODE enabled, table-level destructive SQL is auto-confirmed and Eve may rebuild within the disposable per-task clone; whole-database, schema, or catalog operations still require the instruction to name that exact operation. See Database SQL safety — Disposable estate benchmark mode.
  • If a SQL tool returns requires_confirmation: true, present the statement_type, target_objects, and full sql to the user, then retry only with confirm = true after explicit approval
  • If databricks_action returns requires_confirmation: true for copy_workspace_object or move_workspace_object, present the exact source and destination connections and paths, overwrite impact, and non-atomic move warning as applicable, then retry only with confirm_overwrite=True or confirm_move=True after explicit approval
  • When Eve creates or updates a blueprint, use create_blueprint rather than git_action or file tools. Prefer PREVIEW_EDIT with structured edit_operations, apply the reviewed preview_id with APPLY_EDIT, and keep runtime phase definitions in the single blueprint_manifest.yaml file. Follow phase checklist guidance when authoring phase fields.
  • When a tool error includes error_code or next_steps, report that guidance before retrying. Do not repeat a refused or rejected call with unchanged inputs; retry unchanged inputs at most once only for a timeout, rate limit, or server error. After a failed retry, stop unless new information changes the request, and do not infer a cause the error does not state.
  • Data minimization: mask PII/secrets; avoid external sharing without approval
  • When Eve needs an API key, password, or token for arbitrary web/API or code-execution work, it immediately opens the secure secret prompt and reuses the returned vault secret name instead of asking users to paste credentials into chat or placing raw values in code/tool arguments. For configured Connections such as GitLab /api/v4/..., Eve should not ask for PATs or bearer tokens; it should use connection-backed provider tooling and ask the user to configure or reauthorize the Connection if needed
  • When Team Wiki writes are enabled (wiki.write_enabled is true in AppConfig), save only user-contributed facts, caveats, data quality warnings, domain conventions, or historical context that are specific to a scanned data entity and not derivable from the data itself. Do not save questions, commands, ephemeral dialogue, opinions, or Eve’s own analysis.
  • Resource safeguards: avoid full scans/cross joins; stop if thresholds are exceeded
    Never execute DDL/DML on production without explicit human approval and change-control references.
  • Slack: activation, allow-list, channels
  • Databases: connections, harvest inclusions/exclusions, intervals
  • Workspaces: target schema/stage for outputs
  • Exports: default formats (CSV/XLSX/Sheets), naming conventions, storage locations
  • Web/Docs: SERPer key (optional), Drive service account JSON (optional)
    Store non-secret config in version control; keep secrets in a vault and reference them at runtime.