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.
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.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
_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)
Parameters
remove_tools_from_bot (deprecated)
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
- Data Engineering Agents
Build and operate data pipelines with guardrails. Grantdata_connector_tools,dbt_action, andgit_and_file_toolsfor 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. - Data Ops Agents
Monitor jobs, surface incidents, and automate remediation steps. Combinegenesis_job_tools,harvester_tools,jira_connector_tools, andslack_toolsfor 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. - Business Analyst Agents
Provide safe self-service analysis with read-only access. Usedata_connector_toolsfor parameterized queries and export to Sheets viagoogle_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
- Create a agent with a unique
bot_id, instructions, implementation, and initial tools. - Grant or remove tools and assigned knowledge bases as the scope sharpens.
- Deploy to Slack if collaboration is required.
- Control access with allow lists or open access.
- Iterate on instructions or switch implementations as needs evolve.
- 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_idmust matchname-xxxxxxwherexxxxxxis 6 letters or digits, and must be unique with case-sensitive equality across all agents.- Tool names must match
get_available_toolsexactly. - 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
- Deleting a data agent cannot be undone.
- Tool grants are validated and will fail for unknown tools.
- Slack deployment requires correct app configuration and workspace permissions.
- Switching implementations can change model behavior and token limits.
- Access control changes apply immediately and may interrupt active users.
- 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_idcollisions, missing permissions, or unsupported tools.

