Skip to main content

Interface: EmergentTool

Defined in: packages/agentos/src/emergent/types.ts:429

A tool created at runtime by the Emergent Capability Engine.

EmergentTool is 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.

Properties

createdAt

createdAt: string

Defined in: packages/agentos/src/emergent/types.ts:481

ISO-8601 timestamp of when the tool was first forged and registered.


createdBy

createdBy: string

Defined in: packages/agentos/src/emergent/types.ts:476

Identifier of the entity (agent ID or 'system') that created this tool.


description

description: string

Defined in: packages/agentos/src/emergent/types.ts:447

Natural language description of what the tool does and when to use it. Injected into the LLM prompt as the tool's description field.


id

id: string

Defined in: packages/agentos/src/emergent/types.ts:434

Globally unique identifier assigned at forge time. Convention: emergent:<uuid-v4> (e.g., "emergent:a1b2c3d4-...").


implementation

implementation: ToolImplementation

Defined in: packages/agentos/src/emergent/types.ts:465

The implementation specification — either a composable pipeline or sandboxed code. Determines how the executor runs the tool.


inputSchema

inputSchema: JSONSchemaObject

Defined in: packages/agentos/src/emergent/types.ts:453

JSON Schema defining the structure of arguments the tool accepts. Validated by the executor before each invocation.


judgeVerdicts

judgeVerdicts: (CreationVerdict | PromotionVerdict)[]

Defined in: packages/agentos/src/emergent/types.ts:488

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.


name

name: string

Defined in: packages/agentos/src/emergent/types.ts:441

Machine-readable tool name exposed to the LLM in tool call requests. Must be unique among tools currently registered for the agent.

Example

"fetch_github_pr_summary"

outputSchema

outputSchema: JSONSchemaObject

Defined in: packages/agentos/src/emergent/types.ts:459

JSON Schema defining the structure of the tool's output on success. Used by downstream tools and the judge for output validation.


source

source: string

Defined in: packages/agentos/src/emergent/types.ts:500

Human-readable label describing the origin of this tool for audit purposes.

Example

"forged by agent gmi-42 during session sess-99"

tier

tier: ToolTier

Defined in: packages/agentos/src/emergent/types.ts:471

Current lifecycle tier. Tools start at 'session' and may be promoted to 'agent' and then 'shared' as they accumulate usage and pass audits.


usageStats

usageStats: ToolUsageStats

Defined in: packages/agentos/src/emergent/types.ts:494

Accumulated runtime usage statistics. Updated after every invocation by the usage tracking subsystem.