Skip to content

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 14 Feb 01:49

Highlights

This release is a major step forward for Loki, introducing a coordinated multi-agent system, a built-in task tracking framework, intelligent error recovery for tool invocations, and several new file exploration tools. It also includes a breaking dependency upgrade to G-Man that requires vault migration.


⚠️ BREAKING CHANGES — Please Read Before Upgrading!

Vault Migration Required (G-Man v0.3.0 Upgrade)

Loki now depends on G-Man v0.3.0, which contains a critical security fix for local vault encryption. In previous versions, the encryption key was being zeroized before it was used, meaning local vault secrets were effectively encrypted with an all-zeros key.

You must migrate your existing vault before upgrading Loki. The migration process is:

  1. Before upgrading Loki, dump all your existing secrets from the vault:
    loki --list-secrets
    # Record/export all secret values you need to preserve
  2. Upgrade Loki to v0.2.0.
  3. Re-insert your secrets into the new vault:
    loki --set-secret <name> <value>

Note: If you use a cloud secret provider (AWS Secrets Manager, Azure Key Vault, or GCP Secret Manager), your secrets were always handled by those platforms' own encryption and are unaffected. This only impacts the local vault provider.


✨ New Features

🏗️ Sisyphus Agent System

Loki now ships with a coordinated multi-agent system inspired by OpenCode, designed to make Loki function like Claude Code, Gemini CLI, Codex, or similar AI coding assistants.

  • Sisyphus — The main coordinator agent. Acts as the primary entry point for complex coding tasks, managing multi-step workflows and delegating to specialized sub-agents.
  • Oracle — A high-level architecture and design consultant. Handles complex debugging, tradeoff analysis, code review, and deep reasoning for ambiguous problems. Designed to be delegated to by Sisyphus when expert analysis is needed.
  • Explore — A codebase exploration specialist. Performs deep pattern matching, file system navigation, and context gathering. Read-only by design for safe investigation.
  • Coder — Updated to be more task-focused and work as a delegate of Sisyphus for direct implementation and file modifications.

📋 Built-in Task Tracking System (Todo System)

A new built-in task management system helps LLMs — especially smaller models — complete larger, multistep tasks without losing context.

  • Four built-in tools: todo__init, todo__add, todo__done, and todo__list give agents structured task planning and tracking capabilities.
  • Auto-Continuation: When enabled, Loki automatically prompts the model to continue working when incomplete tasks remain. The current todo state is injected into each continuation prompt, keeping the model focused on remaining work.
  • Configurable per agent: Control auto_continue, max_auto_continues, inject_todo_instructions, and continuation_prompt in each agent's config.yaml.
  • Loop detection: The system detects when a model's continuation response is identical to its previous response and stops automatically to prevent infinite loops.

See the Todo System Guide for full documentation.

🔄 Tool Invocation Error Recovery

Tool and MCP server invocations that error out no longer terminate execution. Instead:

  • Stderr is returned to the model when available, giving the LLM full visibility into what went wrong.
  • Automatic retry logic allows the model to learn from the error and try the invocation again, up to a configurable number of attempts.
  • Loop detection prevents the model from getting stuck in a cycle — both for individual repeated tool invocations and for chains of tool calls that repeat the same pattern.

🔍 New File Exploration Tools

Three new global tools provide more targeted, token-efficient file exploration:

  • fs_read — Controlled file reading with line-range support, reducing token usage compared to fs_cat for large files.
  • fs_grep — Search a file's contents for relevant lines, returning only matching context instead of the full file.
  • fs_glob — Pattern-based file discovery for targeted exploration of project structures.

🤖 Model Support

  • Gemini 3 Pro added to supported Vertex AI models.
  • Claude Opus 4.5 build support added.
  • Gemini 3+ thought signatures are now supported.

📚 RAG Source References

RAG search results now include source attribution, so the model can cite which files or URLs its answers came from.

  • __SOURCES__ placeholder: A new optional template variable that expands to a list of source file paths and URLs used to retrieve context. Use it in your rag_template alongside __CONTEXT__ and __INPUT__.
  • Per-chunk source annotation: Each chunk in __CONTEXT__ is now prefixed with a [Source: <path>] header, letting the model attribute specific information to specific documents.
  • Default template updated: The built-in RAG template now includes a <sources> section and instructs the model to cite sources when answering.

🔧 Agent Enhancements

  • Variable interpolation in conversation starters: Agent conversation starters now support the same {{variable}} interpolation syntax as instructions.
  • Agent-level guard bypass variables: Agent variables can now be defined to bypass guard protections for tool invocations, enabling more flexible agent routing.
  • Environment variable guard bypass: A new environment variable (AUTO_CONFIRM) lets users bypass guard operations in bash scripts, useful for agent routing workflows.
  • Jira Helper upgrade: Now uses the official Atlassian MCP server instead of the custom CLI-based tooling.

🐛 Bug Fixes

  • Claude tool calls with no arguments: Fixed an issue where Claude would provide an empty JSON object or error when a tool required no arguments or flags.
  • Agent variable passthrough: Fixed a bug where --agent-variable values were not being passed to agents correctly.
  • Auto-continuation after compression: Fixed auto-continuation to work correctly in agents after a session is compressed, provided there are still unfinished todo items.
  • Continuation prompt quality: Improved the continuation prompt to discourage the model from creating overly broad todo items.
  • Tool output redirection: fs_ls and fs_cat outputs now always redirect to $LLM_OUTPUT, including on errors.
  • Tool call error message typos: Fixed several typos in tool call error messages.

📖 Documentation

  • Todo System Guide: Comprehensive new documentation covering configuration, usage, best practices, and troubleshooting for the todo system.
  • Agent documentation: Updated to cover the new Sisyphus, Oracle, and Explore agents.
  • Tools documentation: Updated to document the new fs_read, fs_grep, and fs_glob tools.
  • CREDITS file: Created a CREDITS.md file documenting Loki's history and origins from the original AIChat project.
  • Default configuration example: Updated to include the new global functions and agent configurations.

🏗️ Build & Infrastructure

  • G-Man v0.3.0: Upgraded to address local vault encryption vulnerabilities (see Breaking Changes above).
  • Justfile: Added a justfile to streamline common development tasks.
  • Claude Opus 4.5: Added build support.

🎨 Style

  • Cleaned up an anyhow error message for consistency.

📋 Full Changelog

Type Description Commit
feat Created the Sisyphus agent (coordinator for Coder, Explore, Oracle) 6abe2c5
feat Created the Oracle agent for architecture and design decisions 03cfd59
feat Created the Explore agent for codebase exploration 3779b94
feat Updated the Coder agent for task-focused delegation by Sisyphus 4d7d5e5
feat Built-in task management system (Todo System) a935add
feat Tool invocation retry logic and chain loop detection d5e0728
feat Tool/MCP error handling — stderr returned to model 8a37a88
feat Created fs_read tool d4e0d48
feat Created fs_grep tool c7a2ec0
feat Created fs_glob tool 486001e
feat Agent-level variable guard bypass 07f23ba
feat Variable interpolation for conversation starters 8f66cac
feat Environment variable for guard bypass in bash scripts 66801b5
feat Gemini 3 Pro support (Vertex AI) f56ed7d
feat Gemini 3+ thought signatures 2eba530
feat RAG source references — __SOURCES__ placeholder and per-chunk source attribution
feat Official Atlassian MCP server for Jira Helper 621c904
build Upgraded G-Man to v0.3.0 (BREAKING — vault migration required) 0a40ddd
build Claude Opus 4.5 support 5cb8070
build Created justfile cdd8291
fix Claude tool calls with empty/no arguments 25c0885
fix Agent variable passthrough f2de196
fix Auto-continuation after session compression 70c2d41
fix Improved continuation prompt quality b11797e
fix fs_ls/fs_cat output redirection on errors f82c9af
fix Tool call error message typos d79e4b9
docs Todo System documentation d2e541c
docs Agent documentation updates (Sisyphus, Oracle, Explore) 4cfaa2d
docs Tools documentation (fs_read, fs_grep, fs_glob) 5ef9a39
docs Default configuration example updates 325ab1f
docs Created CREDITS.md e3c644b
style Cleaned up anyhow error 3baa310