open-agents-ai 0.97.0 → 0.100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1459,7 +1459,7 @@ The agent auto-detects the provider, normalizes the URL (strips `/v1/chat/comple
1459
1459
 
1460
1460
  ## Evaluation Suite
1461
1461
 
1462
- 40 evaluation tasks test the agent's autonomous capabilities across coding, web research, SDLC analysis, tool creation, multi-file reasoning, and memory systems:
1462
+ 46 evaluation tasks test the agent's autonomous capabilities across coding, web research, SDLC analysis, tool creation, multi-file reasoning, memory systems, and context engineering:
1463
1463
 
1464
1464
  ```bash
1465
1465
  node eval/run-agentic.mjs # Run all tasks
@@ -1503,19 +1503,26 @@ node eval/run-agentic.mjs --model qwen2.5-coder:32b # Different model
1503
1503
  | 38 | Read configs, write to multiple memory topics | Memory Multi-Topic |
1504
1504
  | 39 | Search pre-loaded memories across 3 topics | Memory Pre-Loaded Search |
1505
1505
  | 40 | Combined explore_tools + memory analysis pipeline | Explore + Memory |
1506
+ | ce-01 | Instruction hierarchy (Priority 0 vs injected Priority 30) | Context Engineering |
1507
+ | ce-02 | Memory-backed context assembly | Context Engineering |
1508
+ | ce-03 | Progressive skill loading from SKILL.md | Context Engineering |
1509
+ | ce-04 | Multi-step error recovery chain (3 sequential bugs) | Context Engineering |
1510
+ | ce-05 | 8-file pipeline trace with context compression | Context Engineering |
1511
+ | ce-06 | Meta-analysis: write tests, find bugs, fix, document | Context Engineering |
1506
1512
 
1507
- Tasks 31-33 are designed for small model (≤9B) evaluation using `file_edit` patterns. Tasks 34-40 test the memory system (read/write/search) and tool discovery.
1513
+ Tasks 31-33 are designed for small model (≤9B) evaluation using `file_edit` patterns. Tasks 34-40 test the memory system (read/write/search) and tool discovery. Tasks ce-01 through ce-06 validate context engineering capabilities grounded in current research (see Context Engineering section below).
1508
1514
 
1509
1515
  ### Benchmark Results
1510
1516
 
1511
1517
  ```
1512
- Qwen3.5-122B: 100% pass rate (37/37 tasks, including memory tasks 34-40)
1513
- Qwen3.5-27B: 100% pass rate (30/30 tasks)
1518
+ Qwen3.5-122B: 100% pass rate (37/37 core + 6/6 CE tasks)
1519
+ Qwen3.5-27B: 100% pass rate (30/30 core + 5/6 CE tasks)
1514
1520
  Qwen3.5-9B: 100% pass rate (tasks 31-33, file_edit-optimized)
1515
1521
  71% pass rate (5/7 memory tasks 34-40)
1522
+ 83% pass rate (5/6 CE tasks)
1516
1523
  ```
1517
1524
 
1518
- The eval runner includes model-tier-aware features: automatic tool set filtering, HTTP 500 recovery with file_edit hints, loop detection with tool banning, and tier-based output truncation.
1525
+ The eval runner supports `--runs N` for pass^k reliability measurement (consistency across N independent runs, not just single-pass accuracy). Includes model-tier-aware features: automatic tool set filtering, HTTP 500 recovery with file_edit hints, proactive quality guidance (contextual next-step suggestions instead of tool banning), and tier-based output truncation.
1519
1526
 
1520
1527
  ## AIWG Integration
1521
1528
 
@@ -1534,21 +1541,46 @@ oa "analyze this project's SDLC health and set up documentation"
1534
1541
  | **85+ Agents** | Specialized AI personas (Test Engineer, Security Auditor, API Designer) |
1535
1542
  | **Traceability** | @-mention system links requirements to code to tests |
1536
1543
 
1544
+ ## Context Engineering
1545
+
1546
+ The agent implements structured context assembly based on current research in context engineering, modular prompt optimization, and instruction hierarchy:
1547
+
1548
+ ```
1549
+ C = A(c_instr, c_know, c_tools, c_mem, c_state, c_query)
1550
+ ```
1551
+
1552
+ | Component | Priority | Description |
1553
+ |-----------|----------|-------------|
1554
+ | `c_instr` | P0 (highest) | Core system instructions — immutable, cannot be overridden |
1555
+ | `c_state` | P10 | Personality profile, session state |
1556
+ | `c_know` | P20 | Dynamic project context, retrieved knowledge |
1557
+ | `c_tools` | P30 (lowest) | Tool outputs — may contain untrusted content |
1558
+
1559
+ Key design decisions grounded in research:
1560
+
1561
+ - **Instruction hierarchy** — 4-tier priority system (P0/P10/P20/P30) prevents prompt injection from tool outputs overriding system rules. Implemented across all 3 prompt tiers (large/medium/small) with model-appropriate verbosity
1562
+ - **Proactive quality guidance** — instead of banning tools after repeated use, the agent receives contextual next-step suggestions appended to tool output, preserving tool availability while steering toward productive actions
1563
+ - **Tiered system prompts** — large (≥30B), medium (8-29B), and small (≤7B) models get appropriately sized instruction sets, balancing capability with context budget
1564
+ - **Context composition tracing** — every context assembly emits a structured event showing section labels and token estimates for eval observability
1565
+
1566
+ Research provenance: grounded in "A Survey of Context Engineering for LLMs" (context assembly equation), "Modular Prompt Optimization" (section-local textual gradients), "Reasoning Up the Instruction Ladder" (priority hierarchy), "GEPA" (reflective prompt evolution), and "Prompt Flow Integrity" (least-privilege context passing).
1567
+
1537
1568
  ## Architecture
1538
1569
 
1539
- The core is `AgenticRunner` — a multi-turn tool-calling loop with context management:
1570
+ The core is `AgenticRunner` — a multi-turn tool-calling loop with structured context assembly:
1540
1571
 
1541
1572
  ```
1542
- User task → System prompt + tools → LLM → tool_calls → Execute → Feed results → LLM
1543
- ↓ ↑
1544
- Compaction check ─── Memex archive ─── Context restore
1545
- (repeat until task_complete or max turns)
1573
+ User task → assembleContext(c_instr, c_state, c_know) → LLM → tool_calls → Execute → Feed results → LLM
1574
+ ↓ ↑
1575
+ Compaction check ─── Memex archive ─── Context restore
1576
+ (repeat until task_complete or max turns)
1546
1577
  ```
1547
1578
 
1579
+ - **Context-first** — structured context assembly (C = A equation) replaces ad-hoc prompt construction
1548
1580
  - **Tool-first** — the model explores via tools, not pre-stuffed context
1549
1581
  - **Iterative** — tests, sees failures, fixes them
1550
1582
  - **Parallel-safe** — read-only tools concurrent, mutating tools sequential
1551
- - **Observable** — every tool call and result emitted as a real-time event
1583
+ - **Observable** — every tool call, context composition, and result emitted as a real-time event
1552
1584
  - **Bounded** — max turns, timeout, output limits prevent runaway loops
1553
1585
  - **Context-aware** — dynamic compaction, Memex archiving, session persistence, model-tier scaling
1554
1586
  - **Brute-force** — optional auto re-engagement when turn limit is hit (keeps going until task_complete or user abort)