Globally unique identifier assigned at forge time.
Convention: emergent:<uuid-v4> (e.g., "emergent:a1b2c3d4-...").
Machine-readable tool name exposed to the LLM in tool call requests. Must be unique among tools currently registered for the agent.
"fetch_github_pr_summary"
Natural language description of what the tool does and when to use it. Injected into the LLM prompt as the tool's description field.
JSON Schema defining the structure of arguments the tool accepts. Validated by the executor before each invocation.
JSON Schema defining the structure of the tool's output on success. Used by downstream tools and the judge for output validation.
The implementation specification — either a composable pipeline or sandboxed code. Determines how the executor runs the tool.
Current lifecycle tier. Tools start at 'session' and may be promoted
to 'agent' and then 'shared' as they accumulate usage and pass audits.
The agent that created this tool, or 'system'. The agent identity is the
persona: forge_tool passes the caller's personaId, and an agent-tier
tool runs only for a caller with that personaId. (A GMI instance id is
minted per session and cannot own a tool meant to outlive one: an
agent-tier row from an earlier release that carries one loads suspended
with the reason legacy_owner.)
ISO-8601 timestamp of when the tool was first forged and registered.
Ordered log of all judge verdicts issued for this tool, from initial creation through any subsequent promotion reviews. The most recent verdict is the last element.
Accumulated runtime usage statistics. Updated after every invocation by the usage tracking subsystem.
Human-readable label describing the origin of this tool for audit purposes.
"forged by agent gmi-42 during session sess-99"
A tool created at runtime by the Emergent Capability Engine.
EmergentToolis the persisted record that backs a forged tool. It carries the tool's identity, schemas, implementation spec, current tier, audit trail, and accumulated usage statistics.