superqode 2.0.1__tar.gz → 2.2.0__tar.gz
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.
- {superqode-2.0.1 → superqode-2.2.0}/CHANGELOG.md +130 -0
- {superqode-2.0.1 → superqode-2.2.0}/PKG-INFO +26 -4
- {superqode-2.0.1 → superqode-2.2.0}/README.md +25 -3
- {superqode-2.0.1 → superqode-2.2.0}/pyproject.toml +1 -1
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/__init__.py +1 -1
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp_discovery.py +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/acp_registry.py +7 -7
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/cagent.dev.toml +8 -9
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/codeassistant.dev.toml +8 -8
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/crow-ai.dev.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/fount.dev.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/goose.block.xyz.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/llmlingagent.dev.toml +8 -9
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/poolside.ai.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/qoder.com.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/sigit.dev.toml +2 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/stakpak.dev.toml +7 -8
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/stdiobus.dev.toml +8 -4
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/vtcode.dev.toml +9 -10
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/registry.py +6 -6
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/constants.py +6 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/connect.py +12 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/harness_hub.py +42 -8
- superqode-2.2.0/src/superqode/commands/gauge.py +306 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/hub.py +23 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/config/loader.py +11 -11
- superqode-2.2.0/src/superqode/gauge/__init__.py +42 -0
- superqode-2.2.0/src/superqode/gauge/levels.py +159 -0
- superqode-2.2.0/src/superqode/gauge/record.py +262 -0
- superqode-2.2.0/src/superqode/gauge/sources.py +180 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/hub.py +600 -2
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/main.py +5 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/connection_profiles.py +177 -1
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/harness_catalog.py +4 -4
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/kernel_monty.py +3 -3
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/agent_store.py +1 -1
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/harness_hub.py +248 -62
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/PKG-INFO +26 -4
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/SOURCES.txt +5 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_bridge.py +5 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_conformance.py +3 -1
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_connect.py +3 -1
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_cli_commands.py +14 -2
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_cli_contract.py +9 -2
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_connect_harness_screen.py +1 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_connection_profiles.py +1 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_smoke.py +3 -1
- {superqode-2.0.1 → superqode-2.2.0}/LICENSE +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/MANIFEST.in +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/NOTICE +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/a2a/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/a2a/smoke_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/bench/dspy-comprehension.manifest.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/bench/dspy-comprehension.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/bench/spec-core.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/bench/spec-deepagents.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/bench/spec-prime-agent.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/byok-acp-team.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/codex_sdk_quickstart.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/evals/omni-release.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/evals/omni-tiny.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/manifest-guard/context.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/manifest-guard/hooks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/manifest-guard/tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/broken-extension/src/superqode_example_broken/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/policy-extension/src/superqode_example_policy/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/skill-extension/src/superqode_example_skill/SKILL.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/skill-extension/src/superqode_example_skill/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/tool-extension/src/superqode_example_tool/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/packages/tool-extension-v2/src/superqode_example_tool/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/extensions/python-package/src/superqode_example_extension/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harness-packages/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harness-packages/hello-harness/src/superqode_hello_harness/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/coding.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/deepagents.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/deepseek-harness.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/ds4.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/gemma4.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/google-adk.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/local-recursive-dynamic.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/mcp-docs.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/no-tool.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/omni-tiny-local.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/omnigent-multi-agent.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/openai-agents.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/prime-agent.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/pydanticai.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/harnesses/rlm-code-lid.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/local-models-team.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/mcp/local_docs_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/omnigent-multi-agent.agent.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/qm-deployment-layer/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/qm-deployment-layer/sandbox/skills/superqode-harness/SKILL.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/INCIDENT.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/README.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/RUNBOOK.md +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/deploy_audit/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/deploy_audit/parser.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/deploy_audit/report.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/rlm-docker.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/rlm-monty.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/rlm-demo/tests/test_report.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/examples/simple-team.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/scripts/check_release_metadata.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/setup.cfg +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/conformance.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/connection.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/inspect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/keys.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/limits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/oauth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/presets.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/reply.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/security.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/shortlist.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/skills.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/types.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/understand.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/a2a/workflows.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/doctor.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/permission_screen.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/permission_store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/render.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/session_store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/slash.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/tool_call_context.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/acp/types.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/auto_memory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/command_safety.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/compaction.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/context_manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/edit_strategies.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/exec_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/hooks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/loop.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/loop_guard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/loop_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/network_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/output_handler.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/parallel_compare.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/peer_agents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/plan_mode.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/reminders.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/rubric.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/session_manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/structured_output.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/summarization.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/system_prompts.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/terminal_output_limits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/text_tool_calls.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/tool_args.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/tool_tracking.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent/utility_model.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent_output.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agent_stream.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/agentpool.phil65.github.io.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/ampcode.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/augmentcode.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/autodev.github.io.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/blackbox.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/bub.dev.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/claude.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/cline.bot.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/codebuddy.tencent.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/codex.openai.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/copilot.github.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/cortex.snowflake.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/cursor.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/deepagents-code.langchain.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/deepagents.langchain.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/devin.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/dirac.run.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/factory.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/fastagent.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/fx.sh.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/geminicli.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/glm.z.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/harnlang.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/hermes-agent.nousresearch.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/junie.jetbrains.com.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/kilo.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/kimi.moonshot.cn.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/kiro.dev.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/minioncode.dev.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/mistral-vibe.mistral.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/openclaw.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/opencode.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/openhands.dev.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/pi.dev.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/primeintellect.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/qwenlm.github.io.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/data/x.ai.toml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/discovery.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/free_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/install_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/messaging.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/official_acp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/persona.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/schema.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/agents/unified.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/async_utils.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/capabilities.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/css.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/harness_picker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/inputs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/actions_misc.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/agent_run.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/build_harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/clickable_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/codex.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/commands_impl.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/completion.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/dialogs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/explore.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/factory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/feedback.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/formatting.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_clipboard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_completion_helpers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_diff_review.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_exit_lifecycle.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_file_view.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_interaction_mode.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_mcp_attach.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_message_queue.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_permissions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_recipes_skills.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_share.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_startup.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_todos_plan.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_vim.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helper_wizard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/helpers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/huggingface.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/local_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/mcp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/model_catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/pickers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/pipy_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/rlm_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/sidebar.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/slash_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/switchboard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/mixins/tour.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/navigation.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/outcomes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/progress.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/prompt_stack.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/recipes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/session_state.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/suggester.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/theme_bridge.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/welcome.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app/widgets.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app_enhanced.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/app_main.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/approval.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/atomic.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/auth/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/benchmarks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/discord.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/service.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/slack.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/channels/telegram.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/claude.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/codex.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/a2a.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/a2a_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/a2a_keys.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/acp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/agents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/benchmark.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/daemon.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/factory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/_group.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/_helpers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/bench.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/candidates.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/evaluation.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/evidence.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/inbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/lifecycle.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/logbook.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/observability.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/optimization.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/promotion.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/protocol.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/replay.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/run_history.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/harness/worker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/local.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/memory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/plugins.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/profiles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/providers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/serve.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/sessions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/share.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/skillopt.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/skills.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/trust.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/uhp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/update.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/commands/work.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/config/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/config/schema.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/core/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/danger.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/data/eval_fixtures/ci-dynamic-root-cause.log +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/data/eval_fixtures/ci-root-cause.log +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/data/eval_packs/local_dynamic_workflow_smoke.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/data/eval_packs/local_recursive_smoke.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/data/superqode-template.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/design_system.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/dialogs/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/dialogs/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/dialogs/model.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/dialogs/provider.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/dialogs/runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/diff_view.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/enterprise.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/evaluation/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/evaluation/adapters.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/evaluation/behaviors.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/evaluation/engine.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/evaluation/scenarios.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/execution/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/execution/linter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/execution/modes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/execution/resolver.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/execution/runner.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/extensions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/file_explorer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/file_viewer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/flash.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/governance.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/accelerator.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/agent_importer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/approval_memory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/deepagents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/dsh.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/managed.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/pipy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/prime_agent.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/pydanticai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/rlm.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/rlm_code.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/tau.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/backends/uhp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/bench.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/compiler.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/conformance.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/context_handles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/diagnostics.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/discovery.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/drift.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/eval.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/explain.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/hooks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/kernel.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/loader.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/mcp_bridge.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/model_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/model_routes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/observability.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/omni.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/omnigent_importer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/optimize.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/output.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/permissions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/pipy_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/pipy_extensions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/promotion.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/protocol.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/protocol_adapters.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/protocol_controller.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/rlm_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/rlm_code_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/self_improve.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/spec.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/tau_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/tau_management.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/templates.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/testing.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/uhp_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/uhp_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/wizard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/workflow.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/harness/workflow_presets.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/headless.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/history.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/airplane.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/bench.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/build.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/code_index.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/devstral.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/ds4.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/gemma4.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/glm.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/gpt-oss.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/kimi.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/laguna.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/minimax.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/qwen-coder.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/model-packs/qwen3.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/data/stack_matrix.yaml +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/doctor.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/engines.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/guardrails.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/hardware.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/inventory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/labs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/laguna.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/matrix.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/migrate.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/optimize.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/packs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/repo.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/servers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/setup.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/local/smoke.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/adapters.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/formatter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/sinks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/logging/unified_log.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/lsp/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/lsp/client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/auth_storage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/elicitation.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/harness_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/hf_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/oauth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/oauth_callback.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/sampling.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/mcp/types.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/memory/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/memory/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/memory/providers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/memory/types.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/notifications.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/permissions/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/permissions/rules.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/ai/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/ai/fake.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/ai/gateway.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/ai/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/ai/transform.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/coding_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/compaction.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/event_stream.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/harness_events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/loop.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/messages.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/permissions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/prompt_templates.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/provider_events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/resources.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/codec.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/entries.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/jsonl.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/memory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/repository.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/session/storage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/signals.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/skills.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/stream.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/system_prompt.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/edit_diff.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/files.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/paths.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/shell.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/tools/truncate.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/types.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pipy/validation.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/plan.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/platform_locks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/plugins.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/project_trust.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/_builtin_profiles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/acp_free_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/acp_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/acp_registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/apple_fm.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/copilot_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/credentials.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/dynamic.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/env_introspect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/free_inference.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/gateway/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/gateway/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/gateway/litellm_gateway.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/gateway/openresponses_gateway.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/gateway/synthetic.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/grok_cli_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/health.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/convert.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/downloader.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/endpoints.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/fetch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/hub.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/inference.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/huggingface/transformers_runner.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/live_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/_mlx_worker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/capabilities.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/context_probe.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/discovery.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/ds4.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/lmstudio.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/mlx.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/mlx_engine.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/mlx_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/ollama.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/sglang.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/smoke.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/tgi.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/tool_support.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/local/vllm.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/model_specs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/models_dev.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/opencode_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/converters/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/converters/messages.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/converters/tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/schema/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/schema/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/streaming/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/streaming/parser.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/tools/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/tools/apply_patch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/tools/code_interpreter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/tools/file_search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/openresponses/tools/mcp_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/prime_agent.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/profiles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/recommendations.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/subscription_env.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/subscription_login.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/uhp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/providers/usage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/pure_mode.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/py.typed +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rendering/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rendering/html_export.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rendering/markdown.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rendering/transcript_export.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/coding_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/config.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/context.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/identity.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/kernel.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/kernel_backend.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/kernel_docker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/kernel_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/root_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/root_worker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/subcalls.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/supervisor.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/worker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/rlm/worker_process.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/adk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/antigravity_cli.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/antigravity_managed.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/antigravity_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/antigravity_status.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/builtin.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/claude_agent_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/codex_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/copilot_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/devin_cli.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/devin_status.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/errors.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/openai_agents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/openai_sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/openai_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/pydanticai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/tool_bridge.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/tool_bridge_openai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/tool_bridge_pydanticai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/runtime/vendor_cli.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/safety/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/safety/sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/safety/warnings.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/sandbox/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/sandbox/backends.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/sandbox/execution.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/sandbox/local_sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/search_registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/server/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/server/api.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/server/web.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/factory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/persistence.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/share_artifacts.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/sharing.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session/switchboard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/sidebar.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/skillopt.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/skills.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/stream_view.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/styles/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tool_call.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/agent_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/apply_patch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/batch_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/compact_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/context_handle.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/context_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/core_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/diagnostics.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/diff_utils.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/dynamic_workflow.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/edit_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/enhanced_base.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/env_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/file_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/file_tracking.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/governed.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/harness_agent_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/image_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/lsp_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/mcp_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/monty_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/network_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/output_spill.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/peer_agent_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/permissions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/post_edit.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/question_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/request_permissions_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/search_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/semantic_search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/shell_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/shell_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/skill_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/spawn_harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/todo_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/tool_search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/validation.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tools/web_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tui_integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tui_widgets/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tui_widgets/widgets/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tui_widgets/widgets/progress.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/tui_widgets/widgets/tool_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/undo_manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/utils/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/utils/error_handling.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/utils/fuzzy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/a2a_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/agent_switcher.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/animation_manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/code_context.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/command_palette.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/connection_status.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/conversation_history.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/diff_indicator.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/enhanced_status_bar.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/enhanced_toast.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/file_browser.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/file_reference.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/leader_key.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/mode_switcher.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/model_picker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/outcome_screen.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/permission_preview.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/prompt.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/provider_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/pty_shell.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/resizable_sidebar.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/response_changes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/response_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/rewind_overlay.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/rich_tool_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/sidebar_panels.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/slash_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/slash_complete.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/split_view.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/status_bar.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/superqode_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/theme_picker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/thinking.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/thinking_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/throbber.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/toast.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/uhp_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/widgets/unified_output.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/cockpit.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/runner.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/usage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workorders/worker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/__init__.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/artifacts.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/change_summary.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/coordinator.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/diff_tracker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/git_guard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/git_snapshot.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/manager.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/snapshot.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/watcher.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode/workspace/worktree.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/dependency_links.txt +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/entry_points.txt +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/requires.txt +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/src/superqode.egg-info/top_level.txt +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_030_candidate.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_keys.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_limits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_oauth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_security.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_shortlist.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_a2a_understand.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_agent_dispatch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_free_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_parent_tool_linking.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_permission_store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_render.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_session_store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_acp_slash.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_adaptive_compaction.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agent_importer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agent_install_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agent_loop_harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agent_memory.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agents_md_compat.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_agy_tui_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_app_main_contract.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_apply_patch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_bash_spill.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_benchmarks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_catalog_freshness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_change_summary.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_channels.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_cli_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_cli_reference_coverage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_clickable_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_command_safety.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_commands_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_compaction.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_config_loader.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_config_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_connect_setup.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_context_handles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_context_probe.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_context_remaining.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_copilot_login_ux.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_copilot_tui_commands.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_create_skill_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_deepagents_model_spec.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_deferred_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_design_system_contrast.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_developer_workflow_docs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_ds4_local_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_dsh_harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_dynamic_workflow_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_edit_line_number_strip.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_env_introspect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_execution_resolver.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_extensions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_final_parity_wave.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_free_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_governance.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_grok_cli_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_agent_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_backends.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_bench.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_bench_paths.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_connect_catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_drift.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_eval_splits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_examples.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_explain.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_hooks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_hub_catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_hub_screen.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_kernel.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_mcp_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_model_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_observability.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_omni.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_output.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_permissions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_promotion.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_protocol.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_seesaw_dimensions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_self_improve.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_spec.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_store.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_usage.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_wizard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_harness_workflow.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_headless.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_hf_fetch.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_hooks.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_install_script.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_integration_docs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_kimi_k3_provider.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_kimi_k3_routes.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_linter_runner.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_litellm_gateway.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_live_acp_registry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_live_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_airplane.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_build.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_code_index.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_labs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_migrate.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_model_optimizations.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_packs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_servers.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_setup.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_smoke.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_stack.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_tool_capabilities.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_local_tool_support.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_login_api.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_loop_guard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_managed_harness_backend.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_markdown_render.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_example_server.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_live.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_oauth_generalized.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_tools_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mcp_two_way.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_memory_recall.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_mlx_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_model_profiles.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_model_specs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_models_dev.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_monty_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_navigation_history.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_network_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_ollama_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_omnigent_agent_session_smoke.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_omnigent_importer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_openai_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_output_spill.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_parallel_compare.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_peer_agents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_plugin_hook_wiring.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_plugins.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_policies_and_turndiff.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_post_edit_verify.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prime_agent_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prime_agent_harness.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prime_agent_provider.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prime_command_surface.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prime_tui_rpc.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_progressive_discovery.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_progressive_reveals.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_project_trust.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_prompt_stack.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_provider_catalog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_provider_dynamic.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_provider_models.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_provider_recommendations.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_pure_mode_sessions.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_qm_deployment_layer.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_rate_limit_retry.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_read_tool_limits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_reasoning_and_budget.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_recursive_eval_packs.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_release_metadata.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_rlm_code_integration.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_adk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_antigravity_cli.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_antigravity_managed.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_antigravity_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_builtin.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_claude_agent_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_codex_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_copilot_sdk.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_devin_cli.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_dialog.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_openai_agents.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_openai_events.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_openai_hitl.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_openai_sandbox.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_protocol.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_runtime_pydanticai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_sandbox_backends.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_sandbox_execution.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_search_roots.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_semantic_search.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_session_switchboard.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_shell_session.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_simple_login.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_simple_query_fastpath.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_skillopt.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_slash_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_spawn_harness_tool.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_status_bar_layout.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_steering_continue_reminders.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_streaming_tool_calls.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_subscription_billing_policy.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_subscription_login.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_subscription_login_consent.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_synthetic_gateways.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tau_harness_adapter.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_terminal_output_limits.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_theme_contrast.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_theme_picker.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_theme_repaint.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_todo_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_args_repair.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_batch_safety.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_bridge.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_bridge_openai.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_call_repair.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_output_pruning.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tool_tracking.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tools.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_change_summary.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_chat_mode.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_diagnostics.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_exit.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_feedback.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_launch_performance.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_llamacpp_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_markdown_cleanup.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_mlx_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_mounted.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_onboarding.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_tui_tool_display.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_uhp_backend.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_uhp_client.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_uhp_connect.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_update_command.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_vendor_cli_runtime.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_version.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_view_image.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_web_server_auth.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_workorders.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_workspace.py +0 -0
- {superqode-2.0.1 → superqode-2.2.0}/tests/test_zai_provider.py +0 -0
|
@@ -7,6 +7,136 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.2.0] - 2026-09-07
|
|
11
|
+
|
|
12
|
+
Every Harness Hub record now states the language its harness is implemented in,
|
|
13
|
+
taken from the project's own build manifest rather than its marketing, and that
|
|
14
|
+
fact is filterable from the terminal, the CLI and the website. The same pass
|
|
15
|
+
found install commands that fetched the wrong software and corrected them.
|
|
16
|
+
|
|
17
|
+
### 🔤 Implementation language
|
|
18
|
+
|
|
19
|
+
- Hub records carry `language`, `language_confidence` and `language_evidence`.
|
|
20
|
+
The schema moves to 1.6.
|
|
21
|
+
- "Confirmed" comes from a build manifest, GitHub's language breakdown, or a
|
|
22
|
+
statement by the vendor. "Inferred" is read off what a closed-source product
|
|
23
|
+
ships, such as an npm wrapper over platform binaries or Cargo target triples
|
|
24
|
+
in an installer, and every surface marks it as such.
|
|
25
|
+
- `superqode hub` prints a language column and takes `--language`, whose
|
|
26
|
+
choices come from the catalogue and so cannot drift from it.
|
|
27
|
+
- `superqode hub show` reports the language, how firmly it is known, and the
|
|
28
|
+
evidence behind it.
|
|
29
|
+
- `:hub` filters by language from named buttons that wrap across rows, so no
|
|
30
|
+
language sits off the right edge of an 80-column terminal.
|
|
31
|
+
- New `:connect by-language` screen. It browses every route by what the harness
|
|
32
|
+
is written in: SuperQode's own harnesses, vendor subscriptions, key harnesses
|
|
33
|
+
and the ACP registry.
|
|
34
|
+
|
|
35
|
+
### 🔭 Hub
|
|
36
|
+
|
|
37
|
+
- Inspecting a harness shows its language, the one command that launches it,
|
|
38
|
+
and a Links block carrying the official repository. Several entries repeat a
|
|
39
|
+
single URL across repository, homepage and docs; those now collapse to one
|
|
40
|
+
row instead of printing the same address three times.
|
|
41
|
+
- The preview pane keeps what you need to choose and start. Setup steps, tools,
|
|
42
|
+
policies and commands moved behind Inspect. Warnings stay in the preview,
|
|
43
|
+
since hiding a sandbox caveat behind a keypress is not a summary.
|
|
44
|
+
- ACP agents left `:hub`. `:connect acp` already reaches every one of them and
|
|
45
|
+
marks what is installed, so listing them twice made the Hub twice as long
|
|
46
|
+
without saying anything new.
|
|
47
|
+
- Presets left `:hub` too. They are tunings of the four built-in harnesses
|
|
48
|
+
rather than harnesses in their own right; `:harness switch <preset>` and the
|
|
49
|
+
preset menu still reach them.
|
|
50
|
+
- The Hub opens on All. It previously switched itself to Ready whenever
|
|
51
|
+
anything was installed, which read as a short catalogue rather than a
|
|
52
|
+
filtered one.
|
|
53
|
+
- Entries are ordered alphabetically with nothing promoted, and the list
|
|
54
|
+
returns to the top when the view changes.
|
|
55
|
+
|
|
56
|
+
### 🔧 Install commands and repository URLs
|
|
57
|
+
|
|
58
|
+
- Three commands installed unrelated software: `cargo install fount` fetched a
|
|
59
|
+
Fountain screenplay editor, `npm install -g crow-cli` a Crystal transpiler,
|
|
60
|
+
and `pipx install goose-ai` a placeholder package. `cagent` and `kimi-cli`
|
|
61
|
+
had the same collision on npm.
|
|
62
|
+
- Eight more named packages that do not exist: `qoder-cli`, `sigit`,
|
|
63
|
+
`vtcode-acp`, `@poolsideai/pool`, `cagent`, `stakpak`, `code-assistant` and
|
|
64
|
+
`stdio-bus`.
|
|
65
|
+
- Gemini CLI, Auggie and Kimi were published under the `@anthropic-ai/` scope,
|
|
66
|
+
which belongs to another vendor and carries no such packages. One of the
|
|
67
|
+
three was a live `npx` invocation rather than documentation.
|
|
68
|
+
- Seven repository URLs answered 404 or named the wrong project. OpenCode
|
|
69
|
+
pointed at the archived 2024 Go project, which also reported the wrong
|
|
70
|
+
language for it.
|
|
71
|
+
|
|
72
|
+
## [2.1.0] - 2026-09-06
|
|
73
|
+
|
|
74
|
+
Adds `sq gauge`, which writes an Agent Quality Record for a release decision.
|
|
75
|
+
`harness eval` reports how a harness scored; the record states what was checked
|
|
76
|
+
before a change shipped, which conditions had to hold, who accepted the result,
|
|
77
|
+
and what to revert to.
|
|
78
|
+
|
|
79
|
+
### 🧭 Agent Quality Records
|
|
80
|
+
|
|
81
|
+
- New `sq gauge` command group with `run`, `gate`, `show` and `verify`.
|
|
82
|
+
- `sq gauge run` evaluates a harness and emits a record in the format published
|
|
83
|
+
at [SuperGauge](https://github.com/SuperagenticAI/supergauge), an open
|
|
84
|
+
specification any tool may implement.
|
|
85
|
+
- `sq gauge gate record.yaml --level L2` exits non-zero below the level a
|
|
86
|
+
profile requires. This is the command intended for a pipeline step.
|
|
87
|
+
- `sq gauge show` prints the record as a scorecard: subject, authority, task
|
|
88
|
+
set, measures, gates, verdict and level.
|
|
89
|
+
- `sq gauge verify` recomputes the harness digest against the spec on disk and
|
|
90
|
+
confirms the referenced ledger is present. A digest mismatch means the spec
|
|
91
|
+
moved after the record was written.
|
|
92
|
+
|
|
93
|
+
### 📐 What the record reports
|
|
94
|
+
|
|
95
|
+
- The record introduces no new measurement. It projects state SuperQode already
|
|
96
|
+
holds: `task.completion` and the split counts from `harness eval`, the three
|
|
97
|
+
`efficiency.*_per_success` values from the usage aggregate that command
|
|
98
|
+
already reports, and a sha256 of the spec file as `subject.harness_digest`.
|
|
99
|
+
- `subject.authority` records what the agent was permitted to do, read from
|
|
100
|
+
`execution_policy.sandbox`, the network policy and the agent tool lists. The
|
|
101
|
+
specification requires this because a record naming the agent without naming
|
|
102
|
+
its permissions can be structurally valid and substantively wrong.
|
|
103
|
+
- `--repeat k` runs independent attempts per task and adds
|
|
104
|
+
`reliability.pass_hat_k` and `reliability.pass_at_k`. Working state is reset
|
|
105
|
+
between attempts, without which the measure would be unsound.
|
|
106
|
+
- Measures appear only where the run produced them. An evaluation without
|
|
107
|
+
`--repeat` carries no reliability measure and stops at L2.
|
|
108
|
+
|
|
109
|
+
### 🔗 Evidence read from existing stores
|
|
110
|
+
|
|
111
|
+
- The promotion registry supplies `decision.actor` and the rollback target. The
|
|
112
|
+
target is the base digest, the version in force before the candidate, since
|
|
113
|
+
that is what a reader needs when the candidate turns out to be wrong.
|
|
114
|
+
`--candidate <id>` selects a specific promotion.
|
|
115
|
+
- Governance decisions become the `policy.hard_rules` gate. Recorded `policy.*`
|
|
116
|
+
events are read from the ledger when present; otherwise the policy in force is
|
|
117
|
+
evaluated per phase.
|
|
118
|
+
- The harness protocol ledger is referenced with its event count, which
|
|
119
|
+
conformance level L4 requires so a third party knows the size of what they are
|
|
120
|
+
being invited to replay. `--ledger PATH` overrides the default.
|
|
121
|
+
- Each reader degrades to nothing when its store is absent, which lowers the
|
|
122
|
+
level the record reaches and never fails the run. `--no-sources` turns all
|
|
123
|
+
three off.
|
|
124
|
+
|
|
125
|
+
### 🚦 Gates and judges
|
|
126
|
+
|
|
127
|
+
- A gate is deterministic. `add_gate` raises on `answer.grounded` and
|
|
128
|
+
`robustness.multi_turn` instead of accepting a model-graded measure quietly,
|
|
129
|
+
because a judge varies between runs and can be influenced by the system it
|
|
130
|
+
grades.
|
|
131
|
+
- Level checks live in `superqode.gauge.levels` and mirror the published
|
|
132
|
+
conformance suite, so a record SuperQode emits is judged by the rules a third
|
|
133
|
+
party would apply.
|
|
134
|
+
|
|
135
|
+
### 📚 Documentation
|
|
136
|
+
|
|
137
|
+
- New guide: [Agent Quality Records](docs/advanced/agent-quality-record.md).
|
|
138
|
+
- New CLI reference: [`sq gauge`](docs/cli-reference/gauge-commands.md).
|
|
139
|
+
|
|
10
140
|
## [2.0.1] - 2026-09-02
|
|
11
141
|
|
|
12
142
|
A maintenance release covering the install experience and the OpenCode ACP
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: superqode
|
|
3
|
-
Version: 2.0
|
|
3
|
+
Version: 2.2.0
|
|
4
4
|
Summary: The harness layer for coding agents
|
|
5
5
|
Author-email: Shashi Jagtap <info@super-agentic.ai>
|
|
6
6
|
Maintainer-email: Shashi Jagtap <info@super-agentic.ai>
|
|
@@ -153,8 +153,8 @@ Dynamic: license-file
|
|
|
153
153
|
<img src="assets/superqode-banner.png" alt="SuperQode" width="760">
|
|
154
154
|
</p>
|
|
155
155
|
|
|
156
|
+
<h2 align="center">The harness layer for coding agents.</h2>
|
|
156
157
|
<p align="center">
|
|
157
|
-
<strong>The harness layer for coding agents.</strong><br>
|
|
158
158
|
Discover, build, run, evaluate and optimize coding-agent harnesses from one terminal.<br>
|
|
159
159
|
Interoperable over ACP, A2A, MCP and UHP: drive any coding agent, and be called as one.
|
|
160
160
|
</p>
|
|
@@ -167,6 +167,10 @@ Dynamic: license-file
|
|
|
167
167
|
<a href="https://github.com/SuperagenticAI/superqode/discussions"><img src="https://img.shields.io/github/discussions/SuperagenticAI/superqode?style=flat-square" alt="Discussions"></a>
|
|
168
168
|
</p>
|
|
169
169
|
|
|
170
|
+
<p align="center">
|
|
171
|
+
<a href="https://www.producthunt.com/products/superqode?utm_source=badge-follow&utm_medium=badge&utm_source=badge-superqode" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/follow.svg?product_id=1155543&theme=light" alt="SuperQode - The harness interoperability layer for coding agent | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a>
|
|
172
|
+
</p>
|
|
173
|
+
|
|
170
174
|
<p align="center">
|
|
171
175
|
<a href="https://docs.superqode.dev/"><strong>Documentation</strong></a>
|
|
172
176
|
·
|
|
@@ -176,7 +180,7 @@ Dynamic: license-file
|
|
|
176
180
|
·
|
|
177
181
|
<a href="https://superqode.dev">superqode.dev</a>
|
|
178
182
|
·
|
|
179
|
-
<a href="https://www.youtube.com/watch?v=
|
|
183
|
+
<a href="https://www.youtube.com/watch?v=BmTWNMvJP4s">Demo</a>
|
|
180
184
|
·
|
|
181
185
|
<a href="https://github.com/SuperagenticAI/superqode/discussions">Discussions</a>
|
|
182
186
|
</p>
|
|
@@ -205,7 +209,7 @@ One session: connect an agent, browse the Harness Hub, and call the A2A agent
|
|
|
205
209
|
from the same terminal.
|
|
206
210
|
|
|
207
211
|
<p align="center">
|
|
208
|
-
<a href="https://www.youtube.com/watch?v=
|
|
212
|
+
<a href="https://www.youtube.com/watch?v=BmTWNMvJP4s">
|
|
209
213
|
<img src="assets/superqode-demo.jpg" alt="Watch the SuperQode demo" width="720">
|
|
210
214
|
</a>
|
|
211
215
|
</p>
|
|
@@ -355,6 +359,24 @@ sealed held-out gate without replacing the live specification.
|
|
|
355
359
|
See the [evaluation and optimization guide](docs/advanced/harness-optimization.md)
|
|
356
360
|
and [Harness Promotion](docs/advanced/harness-promotion.md).
|
|
357
361
|
|
|
362
|
+
|
|
363
|
+
### Release records
|
|
364
|
+
|
|
365
|
+
Evaluation says how a harness scored. A record says what was checked before a
|
|
366
|
+
change shipped, which conditions had to hold, who accepted it, and what to
|
|
367
|
+
revert to.
|
|
368
|
+
|
|
369
|
+
```bash
|
|
370
|
+
sq gauge run --spec harness.yaml --tasks eval-tasks.yaml --out record.yaml
|
|
371
|
+
sq gauge gate record.yaml --level L2 # the CI verb
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
The format is [SuperGauge](https://github.com/SuperagenticAI/supergauge), an open
|
|
375
|
+
specification any tool may implement. SuperQode computes nothing new for it: the
|
|
376
|
+
record projects the eval result, the execution policy, the governance decisions,
|
|
377
|
+
the promotion registry and the event ledger it already holds. See
|
|
378
|
+
[Agent Quality Records](docs/advanced/agent-quality-record.md).
|
|
379
|
+
|
|
358
380
|
## Local and Open Models
|
|
359
381
|
|
|
360
382
|
SuperQode is tuned for the cases where context, tool calling, and search decide
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
<img src="assets/superqode-banner.png" alt="SuperQode" width="760">
|
|
3
3
|
</p>
|
|
4
4
|
|
|
5
|
+
<h2 align="center">The harness layer for coding agents.</h2>
|
|
5
6
|
<p align="center">
|
|
6
|
-
<strong>The harness layer for coding agents.</strong><br>
|
|
7
7
|
Discover, build, run, evaluate and optimize coding-agent harnesses from one terminal.<br>
|
|
8
8
|
Interoperable over ACP, A2A, MCP and UHP: drive any coding agent, and be called as one.
|
|
9
9
|
</p>
|
|
@@ -16,6 +16,10 @@
|
|
|
16
16
|
<a href="https://github.com/SuperagenticAI/superqode/discussions"><img src="https://img.shields.io/github/discussions/SuperagenticAI/superqode?style=flat-square" alt="Discussions"></a>
|
|
17
17
|
</p>
|
|
18
18
|
|
|
19
|
+
<p align="center">
|
|
20
|
+
<a href="https://www.producthunt.com/products/superqode?utm_source=badge-follow&utm_medium=badge&utm_source=badge-superqode" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/follow.svg?product_id=1155543&theme=light" alt="SuperQode - The harness interoperability layer for coding agent | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a>
|
|
21
|
+
</p>
|
|
22
|
+
|
|
19
23
|
<p align="center">
|
|
20
24
|
<a href="https://docs.superqode.dev/"><strong>Documentation</strong></a>
|
|
21
25
|
·
|
|
@@ -25,7 +29,7 @@
|
|
|
25
29
|
·
|
|
26
30
|
<a href="https://superqode.dev">superqode.dev</a>
|
|
27
31
|
·
|
|
28
|
-
<a href="https://www.youtube.com/watch?v=
|
|
32
|
+
<a href="https://www.youtube.com/watch?v=BmTWNMvJP4s">Demo</a>
|
|
29
33
|
·
|
|
30
34
|
<a href="https://github.com/SuperagenticAI/superqode/discussions">Discussions</a>
|
|
31
35
|
</p>
|
|
@@ -54,7 +58,7 @@ One session: connect an agent, browse the Harness Hub, and call the A2A agent
|
|
|
54
58
|
from the same terminal.
|
|
55
59
|
|
|
56
60
|
<p align="center">
|
|
57
|
-
<a href="https://www.youtube.com/watch?v=
|
|
61
|
+
<a href="https://www.youtube.com/watch?v=BmTWNMvJP4s">
|
|
58
62
|
<img src="assets/superqode-demo.jpg" alt="Watch the SuperQode demo" width="720">
|
|
59
63
|
</a>
|
|
60
64
|
</p>
|
|
@@ -204,6 +208,24 @@ sealed held-out gate without replacing the live specification.
|
|
|
204
208
|
See the [evaluation and optimization guide](docs/advanced/harness-optimization.md)
|
|
205
209
|
and [Harness Promotion](docs/advanced/harness-promotion.md).
|
|
206
210
|
|
|
211
|
+
|
|
212
|
+
### Release records
|
|
213
|
+
|
|
214
|
+
Evaluation says how a harness scored. A record says what was checked before a
|
|
215
|
+
change shipped, which conditions had to hold, who accepted it, and what to
|
|
216
|
+
revert to.
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
sq gauge run --spec harness.yaml --tasks eval-tasks.yaml --out record.yaml
|
|
220
|
+
sq gauge gate record.yaml --level L2 # the CI verb
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
The format is [SuperGauge](https://github.com/SuperagenticAI/supergauge), an open
|
|
224
|
+
specification any tool may implement. SuperQode computes nothing new for it: the
|
|
225
|
+
record projects the eval result, the execution policy, the governance decisions,
|
|
226
|
+
the promotion registry and the event ledger it already holds. See
|
|
227
|
+
[Agent Quality Records](docs/advanced/agent-quality-record.md).
|
|
228
|
+
|
|
207
229
|
## Local and Open Models
|
|
208
230
|
|
|
209
231
|
SuperQode is tuned for the cases where context, tool calling, and search decide
|
|
@@ -309,7 +309,7 @@ KNOWN_AGENTS: List[Dict[str, Any]] = [
|
|
|
309
309
|
"icon": "🌿",
|
|
310
310
|
"color": "#22c55e",
|
|
311
311
|
"description": "Open-source coding agent with ACP implementation for flexible integration",
|
|
312
|
-
"website": "https://github.com/
|
|
312
|
+
"website": "https://github.com/anomalyco/opencode",
|
|
313
313
|
"requires_api_key": False, # Uses cloud with free tier
|
|
314
314
|
"api_key_env_vars": ["OPENAI_API_KEY", "ANTHROPIC_API_KEY"],
|
|
315
315
|
"check_command": ["opencode", "--version"],
|
|
@@ -360,7 +360,7 @@ KNOWN_AGENTS: List[Dict[str, Any]] = [
|
|
|
360
360
|
"command": ["auggie", "--acp"],
|
|
361
361
|
"alt_commands": [
|
|
362
362
|
["augment", "--acp"],
|
|
363
|
-
["npx", "-y", "@
|
|
363
|
+
["npx", "-y", "@augmentcode/auggie", "--acp"],
|
|
364
364
|
],
|
|
365
365
|
"icon": "🔮",
|
|
366
366
|
"color": "#ec4899",
|
|
@@ -60,7 +60,7 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
60
60
|
),
|
|
61
61
|
"run_command": "gemini --acp",
|
|
62
62
|
"status": "available",
|
|
63
|
-
"installation_command": "npm install -g @
|
|
63
|
+
"installation_command": "npm install -g @google/gemini-cli",
|
|
64
64
|
"installation_instructions": (
|
|
65
65
|
"Install Gemini CLI via npm and set GEMINI_API_KEY or GOOGLE_API_KEY. "
|
|
66
66
|
"For consumer Google AI accounts, use Antigravity CLI instead: :connect antigravity."
|
|
@@ -131,7 +131,7 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
131
131
|
"description": "Block's developer agent that automates engineering tasks. Extensible with MCP.",
|
|
132
132
|
"run_command": "goose acp",
|
|
133
133
|
"status": "available",
|
|
134
|
-
"installation_command": "
|
|
134
|
+
"installation_command": "curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash",
|
|
135
135
|
"installation_instructions": "Install Goose via pipx. Configure providers via goose configure.",
|
|
136
136
|
"requirements": ["python3.10+", "pipx"],
|
|
137
137
|
},
|
|
@@ -176,13 +176,13 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
176
176
|
"identity": "stakpak.dev",
|
|
177
177
|
"name": "Stakpak",
|
|
178
178
|
"short_name": "stakpak",
|
|
179
|
-
"url": "https://github.com/stakpak/
|
|
179
|
+
"url": "https://github.com/stakpak/agent",
|
|
180
180
|
"author_name": "Stakpak",
|
|
181
181
|
"author_url": "https://stakpak.dev",
|
|
182
182
|
"description": "An ACP-compatible agent focused on comprehensive code assistance and collaboration.",
|
|
183
183
|
"run_command": "stakpak acp",
|
|
184
184
|
"status": "available",
|
|
185
|
-
"installation_command": "
|
|
185
|
+
"installation_command": "curl -sSL https://stakpak.dev/install.sh | sh",
|
|
186
186
|
"installation_instructions": "Install Stakpak via pip.",
|
|
187
187
|
"requirements": ["python3", "pip"],
|
|
188
188
|
},
|
|
@@ -216,7 +216,7 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
216
216
|
"description": "AI-powered coding agent with deep codebase understanding and ACP support.",
|
|
217
217
|
"run_command": "auggie --acp",
|
|
218
218
|
"status": "available",
|
|
219
|
-
"installation_command": "npm install -g @
|
|
219
|
+
"installation_command": "npm install -g @augmentcode/auggie",
|
|
220
220
|
"installation_instructions": "Install Auggie via npm. Sign up at augmentcode.com.",
|
|
221
221
|
"requirements": ["node", "npm", "Augment account"],
|
|
222
222
|
},
|
|
@@ -233,7 +233,7 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
233
233
|
"description": "An AI coding assistant built in Rust for autonomous code analysis and modification.",
|
|
234
234
|
"run_command": "code-assistant --acp",
|
|
235
235
|
"status": "available",
|
|
236
|
-
"installation_command": "cargo install code-assistant",
|
|
236
|
+
"installation_command": "cargo install --git https://github.com/stippi/code-assistant",
|
|
237
237
|
"installation_instructions": "Install Code Assistant via Cargo.",
|
|
238
238
|
"requirements": ["rust", "cargo"],
|
|
239
239
|
},
|
|
@@ -250,7 +250,7 @@ ACP_AGENTS_REGISTRY: dict[str, AgentMetadata] = {
|
|
|
250
250
|
"description": "A powerful, customizable multi-agent runtime that orchestrates AI agents.",
|
|
251
251
|
"run_command": "cagent --acp",
|
|
252
252
|
"status": "available",
|
|
253
|
-
"installation_command": "
|
|
253
|
+
"installation_command": "brew install docker-agent",
|
|
254
254
|
"installation_instructions": "Install cagent via pip.",
|
|
255
255
|
"requirements": ["python3", "pip"],
|
|
256
256
|
},
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Schema defined in agent_schema.py
|
|
2
|
-
# https://github.com/
|
|
2
|
+
# https://github.com/docker/docker-agent
|
|
3
3
|
|
|
4
4
|
identity = "cagent.dev"
|
|
5
5
|
name = "cagent"
|
|
6
6
|
short_name = "cagent"
|
|
7
|
-
url = "https://github.com/
|
|
7
|
+
url = "https://github.com/docker/docker-agent"
|
|
8
8
|
protocol = "acp"
|
|
9
9
|
author_name = "cagent"
|
|
10
|
-
author_url = "https://github.com/
|
|
10
|
+
author_url = "https://github.com/docker"
|
|
11
11
|
publisher_name = "SuperQode Team"
|
|
12
12
|
publisher_url = "https://github.com/SuperagenticAI/superqode"
|
|
13
13
|
type = "coding"
|
|
@@ -31,21 +31,20 @@ cagent is a powerful, easy-to-use, customizable multi-agent runtime that orchest
|
|
|
31
31
|
|
|
32
32
|
## Installation
|
|
33
33
|
|
|
34
|
-
Install cagent via
|
|
34
|
+
Install cagent (Docker Agent) via Homebrew:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
|
|
37
|
+
brew install docker-agent
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
**Requirements:**
|
|
41
|
-
-
|
|
42
|
-
- pip
|
|
41
|
+
- Homebrew, or Docker Desktop 4.63+ which ships it as a CLI plugin
|
|
43
42
|
|
|
44
43
|
---
|
|
45
44
|
|
|
46
|
-
**GitHub**: https://github.com/
|
|
45
|
+
**GitHub**: https://github.com/docker/docker-agent
|
|
47
46
|
'''
|
|
48
47
|
|
|
49
48
|
[actions."*".install]
|
|
50
|
-
command = "
|
|
49
|
+
command = "brew install docker-agent"
|
|
51
50
|
description = "Install cagent"
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Schema defined in agent_schema.py
|
|
2
|
-
# https://github.com/
|
|
2
|
+
# https://github.com/stippi/code-assistant
|
|
3
3
|
|
|
4
4
|
identity = "codeassistant.dev"
|
|
5
5
|
name = "Code Assistant"
|
|
6
6
|
short_name = "codeassistant"
|
|
7
|
-
url = "https://github.com/
|
|
7
|
+
url = "https://github.com/stippi/code-assistant"
|
|
8
8
|
protocol = "acp"
|
|
9
9
|
author_name = "Code Assistant"
|
|
10
|
-
author_url = "https://github.com/
|
|
10
|
+
author_url = "https://github.com/stippi"
|
|
11
11
|
publisher_name = "SuperQode Team"
|
|
12
12
|
publisher_url = "https://github.com/SuperagenticAI/superqode"
|
|
13
13
|
type = "coding"
|
|
@@ -31,10 +31,10 @@ Code Assistant is an AI coding assistant built in Rust for autonomous code analy
|
|
|
31
31
|
|
|
32
32
|
## Installation
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
Download the latest release, or build from source:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
cargo install code-assistant
|
|
37
|
+
cargo install --git https://github.com/stippi/code-assistant
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
**Requirements:**
|
|
@@ -43,9 +43,9 @@ cargo install code-assistant
|
|
|
43
43
|
|
|
44
44
|
---
|
|
45
45
|
|
|
46
|
-
**GitHub**: https://github.com/
|
|
46
|
+
**GitHub**: https://github.com/stippi/code-assistant
|
|
47
47
|
'''
|
|
48
48
|
|
|
49
49
|
[actions."*".install]
|
|
50
|
-
command = "cargo install code-assistant"
|
|
51
|
-
description = "
|
|
50
|
+
command = "cargo install --git https://github.com/stippi/code-assistant"
|
|
51
|
+
description = "Build Code Assistant from source"
|
|
@@ -20,7 +20,7 @@ AI coding agent CLI.
|
|
|
20
20
|
## Installation
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
|
|
23
|
+
uv tool install crow-cli
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
For ACP mode:
|
|
@@ -33,5 +33,5 @@ See https://crow-ai.dev for details.
|
|
|
33
33
|
'''
|
|
34
34
|
|
|
35
35
|
[actions."*".install]
|
|
36
|
-
command = "
|
|
36
|
+
command = "uv tool install crow-cli"
|
|
37
37
|
description = "Install crow-cli"
|
|
@@ -20,7 +20,7 @@ AI coding agent with ACP support.
|
|
|
20
20
|
## Installation
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
|
|
23
|
+
curl -fsSL https://steve02081504.github.io/fount/install.sh | bash
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
Or build from source:
|
|
@@ -35,5 +35,5 @@ See https://github.com/steve02081504/fount for details.
|
|
|
35
35
|
'''
|
|
36
36
|
|
|
37
37
|
[actions."*".install]
|
|
38
|
-
command = "
|
|
38
|
+
command = "curl -fsSL https://steve02081504.github.io/fount/install.sh | bash"
|
|
39
39
|
description = "Install fount"
|
|
@@ -50,5 +50,5 @@ What can I help you build today?
|
|
|
50
50
|
'''
|
|
51
51
|
|
|
52
52
|
[actions."*".install]
|
|
53
|
-
command = "
|
|
54
|
-
description = "Install Goose
|
|
53
|
+
command = "curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash"
|
|
54
|
+
description = "Install Goose with Block's own installer"
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# Schema defined in agent_schema.py
|
|
2
|
-
# https://github.com/
|
|
2
|
+
# https://github.com/phil65/agentpool
|
|
3
3
|
|
|
4
4
|
identity = "llmlingagent.dev"
|
|
5
5
|
name = "LLMling-Agent"
|
|
6
6
|
short_name = "llmlingagent"
|
|
7
|
-
url = "https://github.com/
|
|
7
|
+
url = "https://github.com/phil65/agentpool"
|
|
8
8
|
protocol = "acp"
|
|
9
9
|
author_name = "LLMling"
|
|
10
|
-
author_url = "https://github.com/
|
|
10
|
+
author_url = "https://github.com/phil65"
|
|
11
11
|
publisher_name = "SuperQode Team"
|
|
12
12
|
publisher_url = "https://github.com/SuperagenticAI/superqode"
|
|
13
13
|
type = "coding"
|
|
@@ -31,21 +31,20 @@ LLMling-Agent is a framework for creating and managing LLM-powered agents to pro
|
|
|
31
31
|
|
|
32
32
|
## Installation
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
LLMling-Agent is now published as AgentPool. Install it with uv:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
|
|
37
|
+
uv tool install agentpool
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
**Requirements:**
|
|
41
|
-
-
|
|
42
|
-
- pip
|
|
41
|
+
- uv, or pip
|
|
43
42
|
|
|
44
43
|
---
|
|
45
44
|
|
|
46
|
-
**GitHub**: https://github.com/
|
|
45
|
+
**GitHub**: https://github.com/phil65/agentpool
|
|
47
46
|
'''
|
|
48
47
|
|
|
49
48
|
[actions."*".install]
|
|
50
|
-
command = "
|
|
49
|
+
command = "uv tool install agentpool"
|
|
51
50
|
description = "Install LLMling-Agent"
|
|
@@ -21,7 +21,7 @@ AI coding agent by Poolside.
|
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
23
|
# Install Pool CLI
|
|
24
|
-
|
|
24
|
+
curl -fsSL https://downloads.poolside.ai/pool/install.sh | sh
|
|
25
25
|
```
|
|
26
26
|
|
|
27
27
|
For ACP mode:
|
|
@@ -34,5 +34,5 @@ See https://github.com/poolsideai/pool for details.
|
|
|
34
34
|
'''
|
|
35
35
|
|
|
36
36
|
[actions."*".install]
|
|
37
|
-
command = "
|
|
37
|
+
command = "curl -fsSL https://downloads.poolside.ai/pool/install.sh | sh"
|
|
38
38
|
description = "Install Poolside CLI"
|
|
@@ -20,7 +20,7 @@ AI coding CLI with ACP support.
|
|
|
20
20
|
## Installation
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
npm install -g qoder-
|
|
23
|
+
npm install -g @qoder-ai/qodercli
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
For ACP mode:
|
|
@@ -33,5 +33,5 @@ See https://docs.qoder.com/cli/acp for details.
|
|
|
33
33
|
'''
|
|
34
34
|
|
|
35
35
|
[actions."*".install]
|
|
36
|
-
command = "npm install -g qoder-
|
|
36
|
+
command = "npm install -g @qoder-ai/qodercli"
|
|
37
37
|
description = "Install Qoder CLI"
|
|
@@ -20,12 +20,12 @@ AI coding agent by siGit with ACP support.
|
|
|
20
20
|
## Installation
|
|
21
21
|
|
|
22
22
|
```bash
|
|
23
|
-
|
|
23
|
+
cargo install sigit
|
|
24
24
|
```
|
|
25
25
|
|
|
26
26
|
See https://github.com/getsigit/sigit for details.
|
|
27
27
|
'''
|
|
28
28
|
|
|
29
29
|
[actions."*".install]
|
|
30
|
-
command = "
|
|
30
|
+
command = "cargo install sigit"
|
|
31
31
|
description = "Install siGit Code"
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Schema defined in agent_schema.py
|
|
2
|
-
# https://github.com/stakpak/
|
|
2
|
+
# https://github.com/stakpak/agent
|
|
3
3
|
|
|
4
4
|
identity = "stakpak.dev"
|
|
5
5
|
name = "Stakpak"
|
|
6
6
|
short_name = "stakpak"
|
|
7
|
-
url = "https://github.com/stakpak/
|
|
7
|
+
url = "https://github.com/stakpak/agent"
|
|
8
8
|
protocol = "acp"
|
|
9
9
|
author_name = "Stakpak"
|
|
10
10
|
author_url = "https://github.com/stakpak"
|
|
@@ -31,21 +31,20 @@ Stakpak is an ACP-compatible agent focused on providing comprehensive code assis
|
|
|
31
31
|
|
|
32
32
|
## Installation
|
|
33
33
|
|
|
34
|
-
Install Stakpak
|
|
34
|
+
Install Stakpak with its own installer, or Homebrew:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
|
|
37
|
+
curl -sSL https://stakpak.dev/install.sh | sh
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
**Requirements:**
|
|
41
|
-
-
|
|
42
|
-
- pip
|
|
41
|
+
- curl, or Homebrew (`brew install stakpak`)
|
|
43
42
|
|
|
44
43
|
---
|
|
45
44
|
|
|
46
|
-
**GitHub**: https://github.com/stakpak/
|
|
45
|
+
**GitHub**: https://github.com/stakpak/agent
|
|
47
46
|
'''
|
|
48
47
|
|
|
49
48
|
[actions."*".install]
|
|
50
|
-
command = "
|
|
49
|
+
command = "curl -sSL https://stakpak.dev/install.sh | sh"
|
|
51
50
|
description = "Install Stakpak"
|