Commit Graph
30 Commits
Author SHA1 Message Date
Jon Saad-FalconandClaude Opus 4.6 264998b36c fix: filter outlier entries from leaderboard instead of recomputing
Replace the recompute approach from #146 with per-token outlier
detection.  Entries whose energy, FLOPs, or dollar savings exceed
generous per-token thresholds (~1000x legitimate values) are hidden
from the leaderboard entirely.  All displayed values come directly
from the database — no rewriting of submitted data.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 11:17:31 -07:00
Jon Saad-FalconandGitHub eadcc3bb60 Merge pull request #146 from open-jarvis/fix/leaderboard-anti-gaming
fix: recompute leaderboard energy/FLOPs from tokens, cap dollar savings
2026-03-27 11:03:19 -07:00
Jon Saad-FalconandClaude Opus 4.6 77b5567e47 fix: recompute leaderboard energy/FLOPs from tokens, cap dollar savings
Energy and FLOPs are now derived from total_tokens on the leaderboard
display using Claude Opus 4.6 constants, rather than trusting submitted
DB values. This prevents gaming (e.g. TotallyNoire submitting 14B Wh
from 15M tokens). Dollar savings are clamped at the theoretical max
($25/1M tokens) on both the leaderboard and frontend submission side.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 10:58:36 -07:00
0ce10bd97b docs: add macOS installation guide for llama.cpp
Comprehensive step-by-step guide covering Homebrew, uv, Rust, llama.cpp,
model download, Python 3.12 pin (PyO3 compat), and common pitfalls.

Cherry-picked from PR #131 by @gridworks — cleaned up to include only
the docs content (removed duplicate files, binary artifacts, and
unrelated lockfile changes from the original PR).

Co-Authored-By: gridworks <5502067+gridworks@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-27 16:17:17 +00:00
Jon Saad-FalconandClaude Opus 4.6 fc369b9ab0 fix: use Claude Opus 4.6 as sole baseline for leaderboard savings
Dollar savings were previously summed across all three cloud providers
(GPT-5.3 + Claude Opus 4.6 + Gemini 3.1 Pro), inflating the reported
number by ~3x. Now uses only Claude Opus 4.6 pricing as the baseline,
with an asterisk footnote on the leaderboard explaining this.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 18:59:40 -07:00
Jon Saad-FalconandClaude Opus 4.6 1358d946c1 merge: resolve conflicts with main (streaming + auto-recover)
Merge main into fix/ssrf-check, keeping both the auto-recover
logic for error-state agents and the async streaming support
for the send_message endpoint.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 11:29:33 -07:00
Jon Saad-FalconandClaude Opus 4.6 cbf6fe3ea2 feat: add take-bot workflow and update contribution docs
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 03:35:53 +00:00
59dad5eddf fix: address installation failures and SDK bugs (#100)
Bug 1 — Document Rust toolchain requirement:
- Add `maturin develop` step to README, installation docs (all 3
  sections), and quickstart.sh
- Note PYO3_USE_ABI3_FORWARD_COMPATIBILITY for Python 3.14+

Bug 2 — Fix namespace package conflict:
- Move force-include targets from openjarvis/ to _node_modules/ in
  pyproject.toml to prevent editable-install namespace shadowing
- Add fallback path resolution in claude_code.py and
  whatsapp_baileys.py for wheel installs

Bug 3 — Fix trace debugger "No traces yet":
- Enable traces by default (TracesConfig.enabled = True)
- Fix api_routes.py: use store.list_traces() not .recent(),
  dataclasses.asdict() not .to_dict(), get store from app.state
- Wire TraceStore into app.state in app.py

Bug 4 — Fix thinking models returning empty responses:
- Remove hardcoded enable_thinking: False from _openai_compat.py
  that suppressed Qwen3/DeepSeek-R1 output on OpenAI-compatible
  engines (vLLM, SGLang, llama.cpp)

Closes #100

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 16:29:26 -07:00
manuel.richarz b7ad2d2c12 feat: add SSE streaming support for managed agent messages
Add `stream: bool` parameter to `POST /v1/managed-agents/{id}/messages`.
When `stream=true`, the agent processes the message synchronously and
returns an SSE stream (OpenAI-compatible format) with token-by-token
response, tool result events, and usage metadata.

This enables real-time voice assistants and chat UIs to receive agent
responses as they are generated, rather than polling for completion.

- Extend SendMessageRequest with `stream` field (default: false)
- Add _stream_managed_agent() helper using asyncio.to_thread()
- Build AgentContext from conversation history for multi-turn support
- Emit tool_results as named SSE events
- Persist agent response in DB after streaming completes
- Add 6 new tests covering streaming behavior
- Update agents.md documentation with streaming examples
2026-03-24 14:56:58 +01:00
8468f08c41 fix: correct O(N²) energy/FLOPs savings calculation (#95) (#97)
The energy_wh_saved and flops_saved values were orders of magnitude too
high because a scaling factor that grows linearly with N was applied to
the energy calculation, making it scale as O(N³) instead of O(N²).

Replace the buggy scale-factor approach with a direct FLOP-to-energy
conversion using each provider's per-token constants. Add regression
tests to prevent recurrence.

Closes #95

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 18:52:18 -07:00
62eaa70736 feat: add MiniMax as cloud inference provider with M2.7 default (#85)
* feat: add MiniMax as cloud inference provider

Add MiniMax M2.5 and M2.5-highspeed as a 5th cloud provider alongside
OpenAI, Anthropic, Google, and OpenRouter. Uses the OpenAI-compatible
API at api.minimax.io/v1 via the existing openai SDK dependency.

Changes:
- Add MiniMax client init, generate, and streaming in CloudEngine
- Add MiniMax models to model catalog with correct pricing
- Add MINIMAX_API_KEY environment variable support
- Add temperature clamping (0.01-1.0) per MiniMax API constraints
- Add 19 unit tests and 3 integration tests
- Update docs and README with MiniMax provider info

* feat: upgrade MiniMax default model to M2.7

- Add MiniMax-M2.7 and MiniMax-M2.7-highspeed to model list
- Set MiniMax-M2.7 as default model (first in list)
- Keep all previous models (M2.5, M2.5-highspeed) as alternatives
- Update pricing table with M2.7 entries
- Update model catalog with M2.7 specs
- Update docs to list all available MiniMax models
- Update unit tests (23 passing) and integration tests (3 passing)

---------

Co-authored-by: Octopus <octo-patch@users.noreply.github.com>
2026-03-20 04:16:33 -07:00
Gabriel Bo 9c6bdc09cb token counting fixes 2026-03-16 21:51:05 -07:00
Jon Saad-FalconandClaude Opus 4.6 b8bbbdbf55 fix: move focus areas and get-involved to top of roadmap, remove contributing from nav
- Move "Current Focus Areas" and "How to Get Involved" to top of roadmap
- Remove Version History section entirely
- Fix "take" workflow: clarify that claiming happens on GitHub issues,
  with link to create new issues if none exists
- Remove Contributing Guide from MkDocs nav (linked from roadmap instead)
- Link to CONTRIBUTING.md on GitHub from "How to Get Involved" section

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 04:17:21 +00:00
Jon Saad-Falcon cf362897cd feat: add Gmail/Twitter channel adapters, curated templates, channel contract tests, and QA runbook
- Add GmailChannel (OAuth2 + polling) and TwitterChannel (tweepy v2 API)
- Update research_monitor, inbox_triager, code_reviewer templates with curated tool sets
- Add channel_send/channel_list tools to all templates
- Add parametrized contract tests for all 28 channel adapters (195 tests)
- Add Gmail mocked tests (17 tests) and Twitter mocked tests (9 tests)
- Add agent-channel E2E tests with WebChatChannel
- Add live_channel pytest marker
- Add manual QA runbook (docs/testing/agent-qa-runbook.md)
2026-03-16 21:05:37 -07:00
Jon Saad-FalconandClaude Opus 4.6 f52ed33e43 fix: rewrite roadmap around 5 workstreams, fix broken links and cleanup
- Reorganize roadmap around the 5 workstreams: Continuous Operators,
  Mobile & Messaging, Secure Cloud Collaboration, Tutorials, Hardware
- Add concrete "Where you can help" tables with maturity tags and
  good-first-issue markers under each workstream
- Change "GRPO training from trace data" to "Post-training data"
- Fix 404 link: CONTRIBUTING.md link now points to GitHub, not docs site
- Remove !!! tip admonition from docs/development/contributing.md
- Preserve version history in collapsible section

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 03:58:57 +00:00
Jon Saad-FalconandClaude Opus 4.6 29beeed32d docs: add contributor docs, community infrastructure, and roadmap rewrite
- Add root CONTRIBUTING.md with incentives (paper acknowledgment, Mac Mini
  giveaway), contribution tiers, PR process, and maintainership path
- Add CODE_OF_CONDUCT.md (Contributor Covenant v2.1)
- Add .pre-commit-config.yaml with ruff lint + format hooks
- Add GitHub issue templates (bug report, feature request, new eval dataset)
- Add PR template with test/lint/format checklist
- Rewrite docs roadmap with GitHub Projects structure, current focus areas,
  and collapsible version history
- Remove Development section from MkDocs nav; replace with top-level Roadmap tab
- Delete changelog, extending docs (consolidated into CONTRIBUTING.md)
- Delete root ROADMAP.md (content now lives in docs site)
- Add pre-commit to dev extras in pyproject.toml
- Add Roadmap link to README

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 03:24:26 +00:00
Gabriel Bo 14733433b0 adding pagination and limiting to 50 per sign up on leaderboard 2026-03-16 15:58:39 -07:00
Jon Saad-FalconandClaude Opus 4.6 5dc64872fd chore: remove superpowers plan/spec artifacts from repo
These are working files that should not be tracked per CLAUDE.md.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 04:23:38 +00:00
Jon Saad-Falcon cbd59b1258 docs: add agent UX, auto-update, CLI version check spec and plan 2026-03-14 16:28:15 -07:00
Jon Saad-Falcon 4d1929779d docs: add agent UX, auto-update, and CLI version check spec 2026-03-14 16:28:15 -07:00
7df9dedfc9 docs: refresh landing page — clearer primitives, research section, citation (#59)
- Rewrite Five Primitives with plain-English descriptions
- Add 10+ engine backends with hyperlinks (Ollama, vLLM, SGLang, etc.)
- Add Automated Workflows and Energy & Cost Tracking feature cards
- Add Research section linking to Intelligence Per Watt and Stanford
- Add Citation section with BibTeX
- Fix hero-tagline max-width to span full title width

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-14 16:02:17 -07:00
Gabriel Bo 93344a787f adding asterisk to focus on local models 2026-03-14 14:32:29 -07:00
Jon Saad-Falcon 46fcd5bab4 docs: add desktop UX improvements spec and implementation plan 2026-03-14 12:37:19 -07:00
Gabriel Bo f077adc11f feat: add required email field to leaderboard opt-in 2026-03-13 15:17:13 -07:00
Gabriel Bo 90ea7c90b0 Revert "adding email requirement for opt in"
This reverts commit 898099e771.
2026-03-13 15:11:34 -07:00
Gabriel Bo 898099e771 adding email requirement for opt in 2026-03-13 14:23:41 -07:00
05f2c02131 feat: Algolia DocSearch + learning subsystem reorganization (#43)
* chore: create learning subdirectory structure (routing, agents, intelligence)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: extract classify_query to routing/_utils.py

Move the classify_query() function and its regex patterns into a shared
utility module so multiple routing policies can import it without
depending on the full trace_policy module.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: move routing files to learning/routing/ subdirectory

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: create LearnedRouterPolicy merging trace-driven + SFT routing

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add conditional Algolia DocSearch integration

Add Algolia DocSearch as an optional search upgrade — native lunr.js
search remains the default until credentials are configured. Includes
CDN assets, Jinja2 conditional config injection, init script with
graceful fallback, light/dark theme CSS, improved search tokenization
for snake_case/dotted identifiers, and search boosts for key pages.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: move agent_evolver and skill_discovery to learning/agents/

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: move learning/orchestrator to learning/intelligence/orchestrator

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* refactor: delete removed learning policies, rewrite __init__.py, clean up api_routes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add SFT/GRPO/DSPy/GEPA config dataclasses, update LearningConfig

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add general-purpose SFT trainer (intelligence/sft_trainer.py)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: update stale imports in multi_model_router example

Update imports to use new learning/routing/ paths after the
subdirectory reorganization. Replace BanditRouterPolicy with
LearnedRouterPolicy.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add general-purpose GRPO trainer (intelligence/grpo_trainer.py)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add DSPy agent optimizer (agents/dspy_optimizer.py)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add GEPA agent optimizer (agents/gepa_optimizer.py)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* feat: add learning-dspy and learning-gepa optional dependency extras

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: update integration test to check for learned policy instead of grpo

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: clean up stale APIs and unused params in examples

- deep_research: remove system_prompt and max_turns params not accepted
  by Jarvis.ask(), inline system prompt into the query instead
- doc_qa: remove unused --top-k CLI arg that was never passed to the API
- multi_model_router: fix select_model() call to match single-arg signature

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix: import SFT/GRPO trainers in intelligence/__init__.py for registry

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: remove .md file changes from PR

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* chore: restore search boost frontmatter for key docs pages

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 21:34:31 -07:00
Gabriel Bo a2b743d286 docs: update download links to v1.0.0 2026-03-12 10:54:38 -07:00
Gabriel Bo 8cc7a7d644 docs: update download links to v1.0.0 2026-03-12 10:46:42 -07:00
Jon Saad-Falconandkrypticmouse 8798e2ee4f init commit 2026-03-12 17:29:39 +00:00