feat(llamadrome): Multi-backend LLM agent with requestEvaluation#3077
Merged
kriskowal merged 2 commits intoendojs:llmfrom Feb 7, 2026
Merged
feat(llamadrome): Multi-backend LLM agent with requestEvaluation#3077kriskowal merged 2 commits intoendojs:llmfrom
kriskowal merged 2 commits intoendojs:llmfrom
Conversation
Guests can now propose JavaScript code for evaluation via requestEvaluation(), which sends an eval-request message to the host. The host reviews the source code and endowment mappings, then approves (approveEvaluation) or rejects. On approval, code executes in a sandboxed Compartment using only the guest's own namespace, ensuring namespace isolation from the host. Also fixes pre-existing daemon startup failures: renames nodeNumber to nodeId in the endo bootstrap exo and completes the least-authority exo to match GuestInterface. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Bring the Llamadrome package from kriskowal-llm branch and refactor it into a modular architecture with pluggable LLM backends. The agent can now use either Ollama or Anthropic Claude (selected via LLM_BACKEND env var) and proposes code for sandboxed evaluation via requestEvaluation(). - Add system-prompt.js with shared prompt describing ocap environment - Add ollama-backend.js with transcript management and best-effort code extraction from fenced blocks - Add anthropic-backend.js with tool calling loop (request_evaluation, list_names, lookup_value) - Refactor llm-agent.js into thin orchestrator delegating to backends - Add @anthropic-ai/sdk dependency - Add project CLAUDE.md with Endo coding conventions Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
kriskowal-llmbranch tollmbranchLLM_BACKENDenv varrequestEvaluation()so the agent can propose code for sandboxed evaluation with host approvalCLAUDE.mdcapturing Endo coding conventions (harden exports, @ts-check, JSDoc types, error handling patterns)Architecture
New dependency
@anthropic-ai/sdk^0.39.0 (MIT, ~4M weekly downloads, minimal transitive deps)Test plan
node --checkpasses on all new JS filesyarn installresolves cleanlyLLM_BACKEND=ollama endo run --UNCONFINED packages/llamadrome/setup.js --powers AGENTLLM_BACKEND=anthropic ANTHROPIC_API_KEY=... endo run --UNCONFINED packages/llamadrome/setup.js --powers AGENTGenerated with Claude Code