Skip to main content

Overview

Tool Name

Purpose

The make_baby_bot toolset lets you create, configure, deploy, and administer purpose-built data agents. Define instructions, select implementations, assign tools and reusable knowledge bases, manage permissions, and roll out bots to Slack or other environments.

Key Features & Functions

Create Specialized Agents

Spin up new bots with clear instructions and a chosen model implementation.

Curate Tool Access

Grant or remove capabilities so each bot has only what it needs.

Deploy to Slack

Connect data agents to Slack with controlled access to users or channels.

Admin & Governance

List, monitor, update, and retire bots with auditable controls.

Evolve Implementations

Switch engines or providers as requirements change.
Name and scope each data agent narrowly. Fewer tools and focused instructions produce safer, more predictable behavior.
GenesisAuditor’s definition is managed by Genesis. Definition-changing calls in this toolset fail for that agent; see the GenesisAuditor guide for the behavior and what remains configurable.

Input Parameters for Each Function

make_baby_bot

Parameters
Knowledge bases are different from raw document indexes. First register the reusable bundle with Knowledge Base Admin Tools, then pass its knowledge_base_id values here.
Case-sensitive agent IDs. Thread storage paths and metadata caches key off the exact bot_id string stored in BOT_SERVICING. On case-insensitive filesystems, two agents whose ids differ only by letter case would collide in storage, so make_baby_bot returns success: false with an error naming the conflicting id when that happens.
Creating an agent requires manage_agents or create_agents. A caller with only create_agents receives management rights on the agent it creates or imports, but not on other agents. Operations that change an existing agent require global manage_agents or a manage grant on that specific agent. Administrators can restore a missing creator grant through the RBAC API; see RBAC in Genesis.
Context-default validation is fail-fast. When make_baby_bot receives context-default settings, Genesis validates the capability policy and the default tool-group cap before writing the new agent. An invalid patch returns success: false with an error and structured details; no agent row is created, so you can correct the defaults and retry with the same bot_id. If validation passes but the later persistence step fails, the response identifies that the agent was created and includes a repair hint to use set_bot_context_defaults, assign_bot_role, and set_bot_knowledge_bases instead of creating it again.

get_available_tools

Parameters

_remove_bot

Parameters
Removing a data agent is permanent. Back up instructions and configs before calling _remove_bot.

_list_all_bots

Parameters

_deploy_to_slack

Parameters
Tool-driven Slack deployment requires inline master credentials. Provide slack_app_refresh_token on the deploy call, and optionally slack_app_token when you want Genesis to rotate from the current master token in the same step.

add_new_tools_to_bot (deprecated)

Deprecated. Use manage_context(action='ADD_CONTEXT', active_tool_groups='...') for per-thread activation, or set_bot_context_defaults(default_tool_groups=[...]) for durable defaults. This wrapper now redirects to the durable defaults path (it no longer writes the removed available_tools column).
Parameters

remove_tools_from_bot (deprecated)

Deprecated. Use manage_context(action='REMOVE_CONTEXT', active_tool_groups='...') for per-thread changes, or set_bot_context_defaults(default_tool_groups=[...]) for durable defaults. This wrapper now redirects to the durable defaults path.
Parameters

update_bot_instructions

Parameters
Genesis previews the current and proposed instructions first, then requires a follow-up call with confirmed="CONFIRMED" before saving the update.

add_bot_files

Parameters
File attachments are supported for OpenAI-based bots. Cortex-based bots return an error because that runtime does not support files.

update_app_level_key

Parameters

_update_bot_implementation

Parameters

get_bot_knowledge_bases

Parameters Returns the assigned knowledge_base_ids, raw assignment rows, effective_knowledge_bases, and whether runtime search_knowledge_bases and read_knowledge_base_doc currently have any enabled knowledge bases to search or read for that bot.

set_bot_knowledge_bases

Parameters
Pass knowledge_base_id values, not raw document index names. If you need to create the reusable bundle first, use Knowledge Base Admin Tools.

get_bot_context_defaults

Parameters Returns success, bot_id, and a compact defaults object with thread-start tool groups and skills plus tool_access_mode, tool_access_list, skill_access_mode, and skill_access_list. Requires manage_agents.

set_bot_context_defaults

Parameters Supply at least one field to update. On success, returns success, bot_id, and the updated defaults snapshot. Requires manage_agents. Each never_compress_skills entry must also be in default_skills; exceeding the configured per-agent cap is rejected. See Advanced Settings for the cap and Agents Center and Skills for how never-compress affects injected skill text. When Genesis rejects the patch because of capability policy, thread preflight, or default auto-load caps, the tool returns success: false, a human-readable error string, and a structured details object (for example rejected_skills, skill_access_mode, skill_access_list, violation, and cap) so agents can adjust the request without guessing. Other failures return only success and error with no details key. Persistent defaults can retain a policy-authorized channel-bound group while its runtime adapter is temporarily unavailable; runtime availability is enforced when the group is activated for a thread. set_bot_capability_policy is a convenience wrapper that forwards only the policy fields to set_bot_context_defaults and shares the same error envelope.

get_bot_capability_policy

Parameters Returns success, bot_id, and a policy object with tool_access_mode, tool_access_list, skill_access_mode, and skill_access_list. Requires manage_agents.

agent_management

Author and synchronize portable, Git-backed agent definitions. Requires manage_agents and manage_repos. Call EXPORT_PREVIEW before EXPORT_COMMIT whenever a user asks to make a local agent reusable across Genesis instances. Neither export nor sync applies agent lifecycle changes on any instance — per-instance enablement and applying a commit-pinned preview remain separate administrator actions in Config → Managed Sources. The exported agent.yaml manifest includes behavior and capability defaults only. It intentionally excludes Slack or Teams credentials, OAuth secrets, API keys, database credentials, attached files, knowledge bases, RBAC role assignments, and instance-specific deployment settings. For later edits to an already-managed definition, edit through the managed artifact workspace with file(action="write"/"search_replace"/etc, repo_id="...", artifact_type="agent", artifact_id="<agent_id>", file_path="agent.yaml"), then call PUSH_TO_REPO. For assigning catalog skills to bots, use Skill Admin Tools. For generic clone/branch Git work outside managed artifacts, use git_action. Example

_modify_slack_allow_list

Parameters
Use Cases below are NOT limited to those and are only referenced as an example.
High-impact allow-list changes use confirmed action strings instead of a separate boolean flag. When Genesis returns a confirmation prompt, retry with the exact action it requests, such as GRANT CONFIRMED, GRANT ALL CONFIRMED, or REVOKE ALL CONFIRMED.

Use Cases

  1. Data Engineering Agents
    Build and operate data pipelines with guardrails. Grant data_connector_tools, dbt_action, and git_and_file_tools for model runs, schema checks, and versioned SQL changes. Example: An agent compiles and runs selected dbt models on demand, posts run results, and opens a PR with updated snapshots.
  2. Data Ops Agents
    Monitor jobs, surface incidents, and automate remediation steps. Combine genesis_job_tools, harvester_tools, jira_connector_tools, and slack_tools for alerting and ticketing. Example: On failed harvest or long-running warehouse jobs, the agent creates a Jira issue, posts context to Slack, and links logs.
  3. Business Analyst Agents
    Provide safe self-service analysis with read-only access. Use data_connector_tools for parameterized queries and export to Sheets via google_drive_tools. Example: An analyst asks for weekly revenue by segment; the agent runs a vetted query, returns a table, and publishes a refreshed Google Sheet.

Workflow/How It Works

  1. Create a agent with a unique bot_id, instructions, implementation, and initial tools.
  2. Grant or remove tools and assigned knowledge bases as the scope sharpens.
  3. Deploy to Slack if collaboration is required.
  4. Control access with allow lists or open access.
  5. Iterate on instructions or switch implementations as needs evolve.
  6. Retire safely when the data agent is no longer needed.

Integration Relevance

  • slack_tools for deployment and notifications.
  • project_manager_tools to align agents with missions and tasks.
  • data_connector_tools for data access in analytics and BI agents.
  • jira_connector_tools to create or update tickets from a agent.
  • file_manager_tools to capture outputs and attach artifacts.

Configuration Details

  • bot_id must match name-xxxxxx where xxxxxx is 6 letters or digits, and must be unique with case-sensitive equality across all agents.
  • Tool names must match get_available_tools exactly.
  • Choose the implementation based on model capability, latency, and cost.
  • Slack permissions should follow your org policy for user access and scopes.

Limitations or Notes

  1. Deleting a data agent cannot be undone.
  2. Tool grants are validated and will fail for unknown tools.
  3. Slack deployment requires correct app configuration and workspace permissions.
  4. Switching implementations can change model behavior and token limits.
  5. Access control changes apply immediately and may interrupt active users.
  6. Network connectivity is required for external integrations.

Output

  • Creation and updates
    Agent id, configuration summary, granted tools, and deployment status.
  • Listings Arrays of data agents with ids, names, status, and optional instructions.
  • Access control Current allow list entries and confirmations for grants or revokes.
  • Deployment Slack integration status and any required follow ups.
  • Errors Clear messages for invalid ids, case-only bot_id collisions, missing permissions, or unsupported tools.