Skip to content

Feature Documentation (Features)

This is where you come in when you have to go deep on one feature. Each directory corresponds to one feature area, and that area's usage guide, development guide and operations guide sit together in the one folder (the split is by feature, not by reader role).

  • To skim what exists first → ../overview/features.en.md (the feature catalogue)
  • For why it was designed that way → the design rationale links in each section

agent-execution/ — agent execution

The ReAct loop, turn handling, interruption, the input queue.

Document Contents
command-queue-guide.en.md How user input that arrives mid-turn is queued and handled
interruptible-tools-guide.en.md External interruption — Ctrl+C, NOW priority input — and InterruptBehavior
system-reminder-convention.en.md The convention for injecting <system-reminder> synthetic context

Design rationale: agent-runtime-scope.md · orca-executor.md · interceptor.md · interrupt.md · compaction.md · artifact.md

session/ — sessions

Conversation persistence, the live session handle, multi-node deployment.

Document Contents
agent-session-tutorial.en.md Attaching a session for the first time — starting from the smallest example
agent-session-guide.en.md The LiveSession API reference and event streaming
web-session-deployment-guide.en.md SessionRouter single-node / multi-node deployment

IMPORTANT: read the difference between a session (SessionRecord) and a live session (LiveSession) first — ../overview/scope-model.en.md §3.

Design rationale: session-model.md · session-model.md · routing.md · backends.md · backends.md

tool/ — tools

The unit through which an agent interacts with the outside world.

Document Contents
tool-development-guide.en.md The canonical text for building a new tool — the Tool contract, schemas, error handling, permissions
parallel-tool-execution-guide.en.md Running tools in parallel within one batch (ConcurrencyBehavior)
browser-tool-guide.en.md Configuring and using the Playwright-backed Browser tool. Not in this repository — it moved to aimon-browser with the module

Design rationale: parallel-execution.md · tool-search.md

skill/ — skills

A declarative capability package bundling prompts, tools and hooks.

Document Contents
builtin-agent-skill-guide.en.md The built-in Agent/Skill system and user-defined overrides

The standard specification: agentskills-specification.md · aimon-skill-extensions.md

Design rationale: command-unification.md · approval-scope.md

Migration: custom-command-to-skill.md

hook/ — hooks

Intervening at thirteen points in the lifecycle.

Document Contents
hook-development-guide.en.md Writing a hook — the event types, HookFeedback
hook-config-guide.en.md File-based hook configuration, hot reload, layered merging

The parity boundary: hooks-specification.md

Design rationale: hook-system.md · async-rewake.md

subagent/ — subagents

A sub-agent running in an isolated context.

Document Contents
subagent-development-guide.en.md Defining and registering a subagent in code (Java) with Subagent.builder()

Design rationale: code-defined-registration.md · execution.md

workflow/ — workflows

Deterministic orchestration of several subagents.

Document Contents
workflow-cli-guide.en.md The Workflow/WorkflowJs tools and the /runs command from the CLI
workflow-usage-guide.en.md Assembling, running, backgrounding and resuming in code

Design rationale: workflow.md and phase 3 · 4 · 5

llm/ — LLM integration

The provider abstraction and its instrumentation.

Document Contents
llm-provider-development-guide.en.md Implementing a new LlmClient
llm-usage-metering.en.md Token and cost metering

Design rationale: streaming.md · multimodal-content.md · cancellation.md

memory/ — memory

Long-term memory that persists across sessions.

Document Contents
memory-usage-guide.en.md From recording an observation through to recall

Design rationale: peer-memory.md

knowledge/ — knowledge / wiki

Indexing and searching documents fed in from outside.

Document Contents
opensearch-knowledge-store-guide.en.md The OpenSearch RAG Knowledge Store

A reference pattern: llm-wiki.md

Design rationale: knowledge-and-rag.md (the interface + keyword search) · knowledge-and-rag.md (vector/RAG — supersedes the Phase 2 proposal of the previous document)

scheduling/ — scheduling

Cron and one-shot scheduled execution, and routines.

Document Contents
quartz-scheduling-web-deployment-guide.en.md Deploying the Quartz cluster scheduler

Design rationale: llm-scheduling-agent.md

observability/ — observability

Document Contents
execution-tracing-guide.en.md Configuring, querying and redacting execution traces

Design rationale: tracing.md · tracing.md


Areas without a dedicated guide yet

Features that are in the catalogue but have no separate guide document. For now the design documents and the Javadoc are canonical.

Area Where to look for now
MCP integration mcp-tool.md
Sandboxes the aimon-sandbox repository — the design document (docs/design/sandbox.md) and the module READMEs moved there
Filesystem / shell the package-info.java of at.aimon.core.filesystem · at.aimon.core.shell
Commands (/compact and the rest) command-unification.md
Permissions / credentials tool-development-guide.en.md › the permission system

When adding a new document here

  • Put it in the feature-area directory. Create one if it does not exist (name the directory after the area name in the catalogue).
  • Add one line to the matching section of this index.
  • If that feature is not in the ../overview/features.en.md catalogue, add it there too.
  • Design rationale does not go here — put it under ../design/ and link to it.