Complete reference for common mini-a parameters. Parameters are set as param=value arguments, by using the corresponding OAF_*/MINI_A_* environment variables where supported, or through saved model definitions.

mini-a param=value

or

export MINI_A_PARAM=value

1. Model Configuration

Parameter Default Description
model - LLM model configuration in SLON/JSON style (e.g., (type: openai, model: gpt-5-mini, key: '...'))
modellc - Lighter model for simple tasks (dual-model); set via OAF_LC_MODEL env var
modelval - Runtime override for the validation model configuration; same format as OAF_VAL_MODEL
modellock auto Force model-tier selection: main, lc, or auto
lccontextlimit 0 Escalate from low-cost model to main model when context tokens reach this threshold (0 disables)
deescalate 3 Consecutive successful steps required before switching back to the low-cost model after escalation
lcescalatedefer true Defer LC-to-main escalation by one step when LC confidence remains high
lcbudget 0 Maximum total LC token budget before permanently switching to the main model (0 = unlimited)
llmcomplexity false Use a quick LC validation call for medium-complexity routing heuristics
modelstrategy default Model orchestration profile: default (LC-first with escalation), advisor (LC executes, main model consulted selectively for difficult steps), or delegate (LC executes all steps including step 0)
advisorenable true Enable main-model advisor consultations when modelstrategy=advisor
advisormaxuses 2 Maximum advisor consultations per run when modelstrategy=advisor
advisoronrisk true Allow advisor consultations on risk signals
advisoronambiguity true Allow advisor consultations on ambiguity signals
advisoronharddecision true Allow advisor consultations on hard-decision checkpoints
advisorcooldownsteps 2 Minimum step distance between advisor consultations when modelstrategy=advisor
advisorbudgetratio 0.20 Fraction of session token budget advisor calls may consume before low-value consultations are declined
emergencyreserve 0.10 Portion of advisor budget reserved for high-risk/high-value consultations
harddecision warn Hard-decision checkpoint mode: require (block actions until advisor succeeds), warn, or off
evidencegate false Enable lightweight evidence gating for non-trivial actions and final claims
evidencegatestrictness medium Strictness level for evidence gate heuristics: low, medium, or high
maxtokens - Maximum output tokens
rpm - Requests per minute limit
tpm - Tokens per minute limit

2. Core Parameters

Parameter Default Description
goal - The task/goal for the agent to accomplish
verbose false Print more detailed runtime logs
useshell false Enable shell command execution
chatbotmode false Pure chat mode without tools
maxsteps 15 Maximum number of agent steps
rtm - Legacy alias for rpm
format - Output format (e.g., json, yaml, markdown)
youare - Custom system persona/identity
chatyouare - Chatbot-mode persona override when chatbotmode=true
rules - Additional rules or instructions for the agent (plain text, bullet list, or JSON/SLON array of strings)
knowledge - Knowledge base content or file path
conversation - Conversation history file to preload at startup
state - Structured initial state data (JSON/SLON) provided to the agent
raw false Return raw output without extra formatting
showthinking false Surface XML-tagged model thinking blocks as thought logs
debug false Enable debug logging
debugfile - Write debug output as NDJSON to a file (implies debug=true)
debugch - SLON channel definition for main-model LLM traffic — see Channels
debuglcch - SLON channel definition for low-cost-model LLM traffic — see Channels
debugvalch - SLON channel definition for validation-model traffic when llmcomplexity=true — see Channels
outfile - Save final answer to file
outfileall - Deep research only: save full cycle history/verdicts/learnings to file
outputfile - Alternate key for outfile, mainly used by plan conversion flows
extracommands - Comma-separated extra directories for custom slash command templates
extraskills - Comma-separated extra directories for custom skills
extrahooks - Comma-separated extra directories for hook definitions
secpass - Password used to open OpenAF sBucket model secrets
auditch - SLON channel definition for agent interaction audit logs — see Channels for backend options and examples
toollog - SLON channel definition for dedicated MCP tool input/output logs — see Channels for backend options and examples
metricsch - SLON/JSON channel definition for recording periodic Mini-A metrics snapshots (e.g. (name: 'mini-a-metrics', type: 'mvs', options: (file: '/tmp/mini-a-metrics.db'))). Supports optional period, some, and noDate fields — see Channels
goalprefix - Prefix automatically prepended to every goal before the agent sees it
homedir - Override the home directory used to locate the .openaf-mini-a folder
compressgoal false Enable automatic compression of oversized goal text before execution
compressgoaltokens 250 Estimated token threshold above which goal compression is considered
compressgoalchars 1000 Character threshold above which goal compression is considered
nologtrunc false Disable truncation of long log output lines in the console (show full content)
promptprofile context-dependent System prompt verbosity: minimal, balanced, or verbose. Default is minimal in chatbot mode, verbose when debug=true, otherwise balanced
systempromptbudget - Maximum estimated token size for the system prompt. When exceeded, lower-priority sections (examples, detailed tool guidance) are dropped to stay within budget

3. MCP Configuration

Parameter Default Description
mcp - MCP servers to load (comma-separated)
mcpproxy false Enable MCP proxy mode
mcpproxythreshold 0 Byte threshold to spill large proxy results to temp files (0 disables spilling)
mcpproxytoon false Serialize spilled proxy object/array payloads as TOON text when proxy spilling is enabled
mcpproxyallow - Comma-separated allowlist of downstream tool names exposed through proxy-dispatch
mcpproxydeny - Comma-separated denylist of downstream tool names hidden from proxy-dispatch (applied after mcpproxyallow)
mcpprogcall false Start localhost programmatic MCP tool-call bridge for scripts
mcpprogcallport 0 Programmatic MCP bridge port (0 auto-selects)
mcpprogcallmaxbytes 4096 Max inline JSON response size before returning a stored resultId
mcpprogcallresultttl 600 TTL (seconds) for oversized stored results served by the MCP bridge
mcpprogcalltools "" Optional comma-separated tool allowlist exposed by the MCP bridge
mcpprogcallbatchmax 10 Maximum calls accepted by one bridge batch request
mcpdynamic false Allow dynamic MCP discovery
mcplazy false Lazy-load MCP servers
mcpurl - Remote MCP server URL
nosetmcpwd false Do not set the default MCP command working directory to the mini-a install path

4. Tool Configuration

Parameter Default Description
useutils false Enable Mini Utils Tool utilities. With usestdutils=true (default), exposes standard aliases: read, glob, grep, webfetch, question, skill, todowrite, and bash (when useshell=true). Legacy names (filesystemQuery, filesystemModify, etc.) are used when usestdutils=false.
usestdutils true When useutils=true, expose standard Mini Utils aliases (read, glob, grep, webfetch, question, skill, todowrite, bash) instead of legacy Mini Utils internal names
useskills false Expose skill operations in Mini Utils Tool (requires useutils=true)
skillmaxautoload 1 Maximum number of high-confidence matching skills to auto-load into bounded runtime context
skillcontextchars 8000 Maximum characters read from each auto-loaded SKILL.md for runtime context
skillmanifestchars 1536 Approximate character budget for skill descriptions in the system prompt manifest
utilsroot - Root path used by Mini Utils file operations
mini-a-docs false If true and utilsroot is not set, automatically uses the mini-a oPack docs path as utilsroot
miniadocs false Alias for mini-a-docs
usetools false Enable native tool calling on the active model (main or LC)
usetoolslc false Register MCP tools natively only on the low-cost model; the main model continues using prompt/action-based tool guidance. Use when you want the cheaper model to call tools directly without enabling native tool calling on the main model
usejsontool false Register a compatibility json tool for models that sometimes emit json tool calls
libs - Additional library paths to load
toolcachettl 600000 Default cache TTL in milliseconds for MCP tool results
toolfallback false Fall back to action mode when the model emits malformed pseudo tool calls
utilsallow - Comma-separated allowlist of Mini Utils Tool names to expose when useutils=true
utilsdeny - Comma-separated denylist of Mini Utils Tool names to hide when useutils=true (applied after utilsallow)

5. Context Management

Parameter Default Description
maxcontext - Maximum context window tokens
maxcontent - Alias for maxcontext
maxtokens - Maximum response tokens
autocompact true Auto-compact when context is full

6. Deep Research

Parameter Default Description
deepresearch false Enable iterative research-validate-learn cycles
validationgoal - Validation criteria for deep research output quality (inline text or file path)
valgoal - Alias for validationgoal
vmodel - Optional dedicated validation model used in deep-research scoring
modelval - Per-run validation-model override using the same SLON/JSON definition accepted by OAF_VAL_MODEL
maxcycles 3 Maximum number of deep-research cycles
validationthreshold PASS Validation verdict or score rule required to stop iterating
persistlearnings true Carry learnings from failed validation cycles into the next cycle

7. Planning

Parameter Default Description
useplanning false Enable agent planning
forceplanning false Force planning even when heuristics would normally skip it
planstyle simple Planning style: simple (flat sequential steps, default) / legacy (phase-based hierarchical)
earlystopthreshold 3 Consecutive think/error-like steps before stronger recovery logic is triggered
planmode false Run in plan-only mode without executing the plan
validateplan false Validate a plan without executing it
convertplan false Convert a loaded/generated plan to another format and exit
resumefailed false Attempt to resume the last failed goal on startup
planfile - File to save/load plans
planformat - Plan format override, typically md or json
plancontent - Inline Markdown or JSON plan content
updatefreq auto Plan update cadence: auto, always, checkpoints, or never
updateinterval 3 Steps between automatic updates when updatefreq=auto
forceupdates false Force plan updates even after failed actions
planlog - File path to append plan update logs
saveplannotes false Save execution notes back into the plan file after execution
usethinking false Enable chain-of-thought reasoning

7a. Outer Loop Autonomous Coding

Parameter Default Description
outerloop false Enable autonomous multi-cycle coding loop with durable per-session state
outerloopinstructions - Path to persistent outer loop instructions Markdown file
taskfile - Alias for outerloopinstructions
specfile - Alias for outerloopinstructions
outerloopsessionid auto-generated Session ID used as the directory name under ~/.openaf-mini-a/sessions/; pass the same ID to resume an interrupted run
outerloopmaxcycles 5 Maximum number of outer loop cycles
outerloopmaxtime 0 Maximum outer loop runtime in seconds (0 disables)
outerloopstoponrepeat false Stop when the same validation failure repeats
outerloopmaxnochange 2 Stop after N cycles without meaningful change

8. Shell Access

Parameter Default Description
useshell false Enable shell commands
shell - Prefix applied to every shell command
readwrite false Allow file write operations
shelltimeout - Maximum shell command runtime in milliseconds before timeout
shellmaxbytes 8000 Truncate oversized shell output to head/tail excerpts with a banner
shellallow - Allowed shell commands (comma-separated)
shellallowpipes false Allow pipes, redirection, and shell control operators
shellbanextra - Additional banned shell commands (comma-separated)
checkall false Ask for confirmation before every shell command
shellbatch false Run shell commands without interactive approval prompts
shellprefix - Override shell prefix when converting or replaying stored plans
shellban - Banned shell commands (comma-separated)

Shell Sandbox

Parameter Default Description
usesandbox off Enable built-in OS sandbox presets for shell commands (off, auto, linux, macos, windows)
sandboxprofile - Optional macOS sandbox profile path (mini-a auto-generates a restrictive temporary .sb profile otherwise)
sandboxnonetwork false Disable network inside the built-in sandbox when supported

9. Visual & Output

Parameter Default Description
useascii false Enable ASCII art generation
usesvg false Enable SVG generation for custom visuals and infographics
usemaps false Enable map visualization
usemath false Enable LaTeX math guidance for KaTeX rendering in the web UI
usediagrams false Enable diagram generation
usemermaid false Alias for usediagrams
usecharts false Enable chart generation
usevectors false Enable the vector bundle (usesvg=true + usediagrams=true), preferring Mermaid for structural diagrams and SVG for infographics/custom visuals
browsercontext - Browser context configuration (SLON/JSON) or true to auto-enable browser control for supported MCP tools
usestream false Enable response streaming
showexecs false Show shell/exec events as separate lines in the interaction stream
showseparator true Show a separator line between interaction events
format - Output format constraint

10. Delegation

Parameter Default Description
usedelegation false Enable agent delegation
workers - Worker API URLs (comma-separated)
usea2a false Use A2A HTTP+JSON/REST transport for remote delegation
maxconcurrent 4 Max concurrent delegated tasks
workerreg - Start worker registration HTTP server on this port
workerregtoken - Optional token required by the worker registration endpoint
workerevictionttl 60000 Worker eviction TTL in milliseconds for stale worker entries
workerregurl - Parent registration URLs used by workers for self-registration
workerreginterval 30000 Worker heartbeat interval in milliseconds
delegationmaxdepth 3 Maximum recursive delegation depth
delegationtimeout 300000 Default foreground wait/delegation budget in milliseconds
delegationstalltimeout 300000 Idle time before a running delegated subtask is considered stalled; active tasks keep running
delegationhardtimeout - Optional absolute delegated subtask timeout regardless of activity (ms)
delegationmaxretries 2 Retry count for failed delegated subtasks
workermode false Launch mini-a as a Worker API server
showdelegate false Show delegate/subtask events as separate console lines
workerskills - Comma-separated list (or JSON/SLON array) of A2A skill IDs this worker advertises (e.g. "shell,time")
workerspecialties - Comma-separated specialty tags injected into the run-goal A2A skill description
workertags - Comma-separated tags appended to the default worker skill in the AgentCard
shellworker false Convenience shorthand: sets useshell=true and auto-emits the shell A2A skill
apitoken - Bearer token required to authenticate requests to the worker API server
apiallow - Comma-separated IP allowlist for the worker API (e.g. 127.0.0.1,192.168.1.0/24)
defaulttimeout 300000 Default task deadline in milliseconds for delegated tasks
maxtimeout 600000 Maximum allowed task deadline in milliseconds
taskretention 3600 Seconds to keep completed task results before cleanup
subtasks - Inline startup scout subtasks (pipe-separated goals) executed before the main loop
subtasksfile - Path to a JSON/YAML file containing startup scout task definitions
subtaskssequential false Run startup subtasks sequentially instead of in parallel
forkstatemaxbytes 65536 Maximum bytes of parent context snapshot transmitted to a forked sub-agent
autodelegation false Enable automatic delegation of oversized tool results to a summary sub-agent
autodelegationthreshold 8192 Byte size threshold of tool results that triggers auto-delegation
autodelegationmaxperstep 2 Maximum number of auto-delegations allowed per agent step
noisytools - Comma-separated list of tool names that always trigger auto-delegation regardless of size

10a. Agent Files

Load a preconfigured mini-a profile from a markdown file with YAML frontmatter.

mini-a agent=examples/my-agent.agent.md goal="..."
mini-a agent="---\nname: quick\ncapabilities:\n  - useutils\n---" goal="..."
mini-a --agent   # Print a starter template
Parameter Default Description
agent - Path to an agent markdown file, or inline markdown with YAML frontmatter
agentfile - Backward-compatible alias for agent

See the Agent Files page for the complete reference: all frontmatter keys, tool entry types, mini-a: overrides, relative file resolution, precedence rules, and a full annotated example.

10b. Conversation History

Parameter Default Description
historykeep false Save console conversations to ~/.openaf-mini-a/history for future resumption
historykeepperiod - Delete kept conversation files older than this many minutes
historykeepcount - Keep only the newest N kept conversation files

10b. Working Memory

Enable a structured, scoped working memory subsystem that the agent maintains automatically across tool calls, runs, and sessions. Working memory prevents context window bloat while preserving key learnings, decisions, and evidence.

Parameter Type Default Description
usememory boolean false Enable the working memory subsystem. Set false to disable all memory tracking.
memoryuser boolean false Convenience preset: enables usememory, creates ~/.openaf-mini-a/, registers file-backed global + session channels, auto-promotes facts,decisions,summaries, and sets memorystaledays=30.
memoryusersession boolean false Convenience preset: enables usememory, creates ~/.openaf-mini-a/, sets memoryscope=session, and registers a file-backed session channel.
memoryscope string both Which store the agent reads from and defaults writes to: session (current run), global (across sessions), or both.
memorych string - SLON/JSON definition of an OpenAF channel to persist global memory (e.g. file, Redis, jdbc).
memorysessionch string - SLON/JSON definition of a channel for session memory persistence (falls back to memorych if omitted).
memorysessionid string <agent-id> Session key namespace in the channel (defaults to conversation argument, otherwise falls back to internal agent ID).
memorymaxpersection number 80 Maximum entries kept per section before compaction prunes stale or old entries.
memorymaxentries number 500 Hard cap on total entries across all sections.
memorycompactevery number 8 Number of append operations that trigger an automatic memory compaction pass.
memorydedup boolean true Suppress near-duplicate entries using an 85% word-overlap fingerprint.
memorypromote string "" Comma-separated list of sections to auto-promote from session to global memory at session end.
memorystaledays number 0 Days without confirmation before a global entry is marked stale (cleared during compaction if section overflows).
memoryinject string summary Context injection style: summary injects only per-section counts and enables dynamic memory_search; full embeds the entire memory snapshot in every step’s context.
memorysessionheader string - HTTP header name used to derive memorysessionid in Web/Server UI mode (e.g., X-User-Id).

Memory Classification (Taxonomy)

Mini-A exposes one structured working-memory system. The common memory types are implemented by combining that system with different scopes and persistence settings:

Memory type What it means in Mini-A Main parameters
Working memory The live structured store the agent reads and writes during a run usememory, memoryinject, memorymaxpersection, memorymaxentries, memorycompactevery, memorydedup
Episodic memory Session-scoped state for a specific conversation or run memorysessionid, memoryscope=session\|both, memorysessionch
Semantic memory Durable knowledge the agent can reuse across runs memorych, memoryscope=global\|both, memorypromote, memorystaledays
Procedural memory Instructions and workflow rules that tell Mini-A how to behave agent, mode, skills, AGENTS.md, prompts (not a dedicated memory store)

memoryuser=true is the convenience preset for both global and session working memory. memoryusersession=true is the session-only version.

Memory Sections

Memory is categorized into 8 independent, typed sections that the agent manages automatically:

  • facts: Confirmed facts and truths discovered or verified during the run.
  • evidence: Direct observations, statistics, and tool outputs worth remembering.
  • decisions: Architecture or workflow choices made along with their rationale.
  • risks: Tool failures, sub-agent issues, validation warnings, or blockers.
  • openQuestions: Pending questions, gaps in specifications, or follow-up items.
  • hypotheses: Unconfirmed assumptions or candidate approaches being explored.
  • artifacts: Excerpts of generated configs, code blocks, or structured outputs.
  • summaries: Higher-level narrative overviews of completed milestones or phases.

Convenience Presets

To avoid configuring channels manually, use one of the two convenience presets:

  1. memoryuser=true: Ideal for persistent local development. Automatically stores memory databases under ~/.openaf-mini-a/memory-global.json and ~/.openaf-mini-a/memory-session.json. At the end of a session, facts, decisions, and summaries are promoted to global memory, and any entry not verified in 30 days is swept.
  2. memoryusersession=true: Ideal for isolated, session-scoped runs where you still want local persistent history on the disk (saved under ~/.openaf-mini-a/memory-session.json), but no information should leak into the shared global namespace.

Dynamic Context Injection (memoryinject=summary)

[!TIP] Use the default memoryinject=summary for complex or long-running tasks. Instead of injecting all memory entries into every step’s prompt (which wastes thousands of tokens and causes model distraction), Mini-A only injects the counts (e.g., workingMemory: { facts: 12, decisions: 3 }). The agent is equipped with a memory_search action to retrieve specific facts or decisions on demand using keyword queries, saving up to 95% of context memory overhead.

Configuration Examples

# Inside an agent file frontmatter (my-agent.agent.md)
mini-a:
  usememory: true
  memoryuser: true
  memoryinject: summary
# Running with separate session/global file channels and a custom session namespace
mini-a goal="audit security modules" \
  usememory=true \
  memorych="(name: sec_global, type: file, options: (file: '/var/data/global-sec.json'))" \
  memorysessionch="(name: sec_session, type: file, options: (file: '/var/data/session-sec.json'))" \
  memorysessionid="audit-q2-2026"

10c. Wiki Knowledge Base

A persistent, shared Markdown wiki that agents read from and write to across sessions. Any agent pointing at the same wikiroot (or wikibucket) sees the same pages.

Parameter Default Description
usewiki false Enable the wiki knowledge base
wikiaccess ro Access mode: ro (read-only) or rw (read-write)
wikibackend fs Backend: fs (filesystem), s3, s3fs, or es (Elasticsearch/OpenSearch)
wikiroot . Root directory for the fs backend
wikibucket - S3 bucket name (s3/s3fs backend)
wikiprefix - S3 key prefix (s3/s3fs); Elasticsearch index name for es (defaults to mini_a_wiki)
wikiurl - S3-compatible endpoint URL (s3/s3fs); Elasticsearch/OpenSearch base URL for es
wikiaccesskey - S3 access key (s3/s3fs); Elasticsearch username for es
wikisecret - S3 secret key (s3/s3fs); Elasticsearch password for es
wikiregion - S3 region (s3/s3fs backend)
wikiuseversion1 false Use S3 path-style (v1) signing (s3/s3fs backend)
wikiignorecertcheck false Skip TLS certificate validation (s3/s3fs backend)
wikilintstaleddays 90 Days before a page without an updated field is marked stale in lint
wikimounts - SLON/JSON array of read-only wiki mounts: [{name: 'team', backend: 'fs', root: '/path'}] — mounted pages appear as @name/path.md in all wiki operations

When a new empty wiki is opened with wikiaccess=rw, Mini-A bootstraps three starter pages: AGENTS.md (ingestion workflow and rules), index.md (entrypoint/catalog), and log.md (append-only journal of every write, delete, and move). AGENTS.md and log.md are protected and cannot be deleted.

Start each wiki session with wiki op="context" for a compact overview (page count, sections, mounts, recent log entries), then use search before reading any page.

Wiki operations available to the agent: context, list, tree, browse, read, search, backlinks, lint, write, move, init, reindex, mounts, attach, detach. Operations that require wikiaccess=rw: write, move, init, reindex. Console commands: /wiki context, /wiki list [prefix], /wiki tree [prefix], /wiki browse [prefix], /wiki read <page.md>, /wiki search <query>, /wiki backlinks <page.md>, /wiki lint, /wiki reindex, /wiki mounts, /wiki attach <name> [backend=fs] [root=path], /wiki detach <name>. Use /stats wiki to see per-operation counters for the current session.

10c-1. Dreams (Sleep Pass)

An LLM-powered off-line consolidation pass over persistent memory and/or the wiki. Run after a session to merge duplicates, surface insights, and produce a lint-clean wiki.

Parameter Default Description
dream false Run in standalone dream-pass mode instead of a regular agent session
dreammode - Dream mode selector: memory, wiki, or both — controls which pass(es) run
dryrun false Preview what would change without writing anything back
dreamwikimode apply Wiki dream mode: lint, plan, apply, reorg
dreammemorymode apply Memory dream mode: plan or apply
dreamwikiapply false Required write gate for wiki apply or reorg modes
dreamwikiapproval ask Reorg approval mode: auto, ask, never
dreamwikireorg false Allow structural reorg operations during wiki dream
dreamreport - Optional file path to write JSON run report
maxauditrecords 200 Maximum audit log entries included in the memory consolidation prompt
dreammaxsteps 60 Maximum agent steps for the wiki dream pass

The memorych, memorysessionch, memorysessionid, auditch, usewiki, and model parameters are shared with the memory and wiki subsystems. See the Advanced — Dreams page for full documentation and examples.

10d. Adaptive Routing

A rule-based routing layer that selects how each tool action is dispatched. When disabled, mini-a uses legacy behavior.

Parameter Default Description
adaptiverouting false Enable rule-based adaptive tool routing
routerorder - Preferred route execution order (comma-separated route types)
routerallow - Allowlist of route types the router may select (comma-separated)
routerdeny - Denylist of route types the router must never select (comma-separated)
routerproxythreshold - Byte threshold to prefer the proxy route for large payloads (falls back to mcpproxythreshold when omitted)

Route types: direct_local_tool, mcp_direct_call, mcp_proxy_path, shell_execution, utility_wrapper, delegated_subtask.

Route selection is based on intent hints (read/write, payload size, latency sensitivity, risk level, structured output preference) and historical route success. Fallback chains are attempted in order; each failed attempt is appended to an errorTrail. Route decisions are visible in debug/audit output as [ROUTE ...] records when debug=true.

11. Web Interface

Parameter Default Description
onport - Port for web UI (enables web mode)
maxpromptchars 120000 Maximum accepted prompt size for incoming web /prompt requests
ssequeuetimeout 120 Web SSE stream queue timeout in seconds
logpromptheaders - Comma-separated HTTP request header names to log alongside incoming web prompts (e.g. X-User-Id)
usehistory false Enable conversation history persistence in web mode
historykeep false Keep finished web conversation history files instead of discarding them
historypath - Directory path used to store web conversation history files
historyretention 600 Web history retention window in seconds
historykeepperiod - Delete kept conversation history files older than this many minutes
historykeepcount - Keep only the newest N kept conversation history files
historys3bucket - S3 bucket used to mirror history files
historys3prefix - S3 key prefix for mirrored history files
historys3url - S3 endpoint URL for history mirroring
historys3accesskey - S3 access key for history mirroring
historys3secret - S3 secret key for history mirroring
historys3region - S3 region for history mirroring
historys3useversion1 false Use S3 path-style (v1) signing for history mirroring
historys3ignorecertcheck false Disable TLS certificate checks for history S3 access
useattach false Enable file attachment support in web mode

12. Knowledge & Persona

Parameter Default Description
knowledge - Knowledge base content or file
youare - Agent persona/identity description
chatyouare - Chatbot-mode persona override
rules - Behavioral rules for the agent

13. Rate Limiting

Parameter Default Description
rpm - Requests per minute limit
tpm - Tokens per minute limit
rtm - Legacy alias for rpm

14. Docker Environment Variables

Variable Maps to
OAF_MODEL model
OAF_LC_MODEL modellc
OAF_VAL_MODEL modelval — dedicated validation model for deep research scoring
OAF_MINI_A_NOJSONPROMPT Force text prompt mode for main model; Gemini main models auto-enable this behavior when unset
OAF_MINI_A_LCNOJSONPROMPT Force text prompt mode for low-cost model (set explicitly for Gemini low-cost models)
OAF_MINI_A_CON_HIST_SIZE Maximum console history size (defaults to JLine’s default)
OAF_MINI_A_LIBS Comma-separated library paths to load automatically at startup
MINI_A_GOAL goal
MINI_A_PORT onport
OAF_MODEL / OAF_LC_MODEL key field Provider API credential (recommended)
GITHUB_TOKEN GitHub Models token (optional when key is provided in model config)

15. Console Commands Reference

Command Description
/help Show available commands
/model Show current model info
/models Show all configured model tiers (main, LC, validation) with provider and source
/compact [n] Compact older history while keeping up to latest n exchanges (default 6)
/summarize [n] Summarize older history while keeping up to latest n exchanges (default 6)
/context [llm|analyze] Show estimated or model-analyzed context token breakdown
/reset Reset conversation
/last [md] Reprint the previous final answer (raw markdown with md)
/save <path> Save the previous final answer to a file
/stats [mode] [out=file.json] Show session metrics (summary/detailed/tools) and optionally export JSON
/history [n] Show the latest user goals from conversation history
/exit Exit mini-a
/clear Reset conversation history and accumulated metrics
/cls Clear screen

16. Mode Presets

Preset Parameters Enabled
shell useshell=true
shellrw useshell=true useutils=true readwrite=true shellallowpipes=true shellbatch=true showexecs=true mini-a-docs=true
utils useutils=true mini-a-docs=true usetools=true
chatbot chatbotmode=true usestream=true
internet Internet-focused MCP/tool preset with docs-aware utils and proxy aggregation
news News-focused MCP preset (web + rss + time, proxy enabled)
poweruser Shell + utils + tools with proxy tuning, history retention, LC validation, and docs-aware defaults
web Browser UI preset with MCP tools enabled
webfull Full web UI preset with history/attachments, proxy tuning, charts/diagrams/maps, and richer rendering options

User custom presets can be defined in ~/.openaf-mini-a_modes.yaml. They are merged with built-ins from mini-a-modes.yaml, and user definitions take precedence.

Channels

mini-a uses OpenAF channels as the pluggable storage backend for audit logs, tool logs, and debug traffic. The channel-accepting parameters (auditch, toollog, debugch, debuglcch, debugvalch, metricsch) each accept a SLON definition that specifies the backend, channel name, and options.

See the Channels reference for the complete definition format, every supported backend (file, MVS, Redis, S3, and more), and ready-to-use query examples.

Advanced Topics

For power-user configuration, deployment patterns, and provider-specific guides, see the Advanced page. Topics covered:

  • Dual-model setup and advisor strategy mode
  • MCP advanced options — proxy, dynamic discovery, lazy loading
  • Custom slash commands, skills, and hooks
  • Performance tuning and context management
  • Shell sandboxing — OS-level (usesandbox), Docker, Podman, Apple container CLI
  • Delegation and dynamic worker registration (including Kubernetes HPA patterns)
  • Dreams (sleep pass) — LLM-powered memory and wiki consolidation
  • JavaScript and oJob library integration
  • Debugging techniques and provider-specific guides (AWS Bedrock, GitHub Models, Ollama)