cluxion-agentplugin-supercoder 0.2.15__tar.gz → 0.2.16__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.
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/PKG-INFO +1 -1
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/pyproject.toml +1 -1
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/slash_commands.py +8 -3
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_slash_commands.py +15 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/uv.lock +1 -1
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.github/workflows/ci.yml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.github/workflows/publish.yml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.gitignore +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/ci-hermes-probe-skip.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/fix-empty-oldtext-infinite-loop.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/fix-hash-patch-race-0619.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/fix-live-audit-0619.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/p0-read-path-security.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/p2-doctor-security-probes.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/.grok-briefs/perf-0619.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/ARCHITECTURE.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/README.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/agent-surfaces.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/architecture.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/capabilities.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/design.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/installation.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/rust-architecture.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/tools.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/LICENSE +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/README.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/__init__.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/adapters/claude/.claude-plugin/plugin.json +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/adapters/claude/skills/supercoder/SKILL.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/adapters/codex/config-snippet.toml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/adapters/hermes/README.md +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/dist-merged/cluxion_agentplugin_supercoder-0.2.13-cp311-abi3-macosx_11_0_arm64.whl +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/plugin.yaml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/Cargo.lock +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/Cargo.toml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/pyproject.toml +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/src/lib.rs +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/src/main.rs +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/src/outline.rs +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/src/syntax.rs +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/rust/supercoder_index/uv.lock +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/scripts/repack_native_wheel.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/__init__.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/cli.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/cursor.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/hash_patch.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/line_budget.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/lint_gate.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/queue.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/repo_map.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/retry_loop.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/safety.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/syntax_gate.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/core/test_gate.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/doctor/__init__.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/doctor/catalog.json +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/doctor/framework.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/doctor/probes.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/plugin.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/runner.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/rust_bridge.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/src/cluxion_agentplugin_supercoder/schemas.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_cursor.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_doctor.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_hash_patch.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_line_budget.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_lint_gate.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_plugin.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_queue.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_repo_map.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_retry_loop.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_rust_bridge.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_safety.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_syntax_gate.py +0 -0
- {cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_test_gate.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: cluxion-agentplugin-supercoder
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.16
|
|
4
4
|
Summary: Universal agent coding harness plugin: cursor logic, safe patch, line budget, Rust index, test gates.
|
|
5
5
|
Project-URL: Homepage, https://github.com/cluxion/cluxion-Agentplugin-supercoder
|
|
6
6
|
Project-URL: Repository, https://github.com/cluxion/cluxion-Agentplugin-supercoder
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/pyproject.toml
RENAMED
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "cluxion-agentplugin-supercoder"
|
|
7
|
-
version = "0.2.
|
|
7
|
+
version = "0.2.16"
|
|
8
8
|
description = "Universal agent coding harness plugin: cursor logic, safe patch, line budget, Rust index, test gates."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
@@ -22,10 +22,13 @@ Examples:
|
|
|
22
22
|
|
|
23
23
|
Notes:
|
|
24
24
|
- Patches are hash-verified; empty old_text is rejected immediately
|
|
25
|
-
-
|
|
25
|
+
- Slash dispatch skips repo_map (fast); agent calls supercoder_plan for map
|
|
26
26
|
- Diagnostics: /supercoder-doctor
|
|
27
27
|
"""
|
|
28
28
|
|
|
29
|
+
# Hermes Desktop gateway RPC times out at 30s; repo_map on large cwds can exceed that.
|
|
30
|
+
_SLASH_PLAN_KWARGS: dict[str, object] = {"repo_map": False}
|
|
31
|
+
|
|
29
32
|
|
|
30
33
|
def build_supercoder_directive(task: str, plan_payload: dict[str, object]) -> str:
|
|
31
34
|
plan_block = json.dumps(plan_payload, ensure_ascii=False, indent=2)
|
|
@@ -34,7 +37,7 @@ def build_supercoder_directive(task: str, plan_payload: dict[str, object]) -> st
|
|
|
34
37
|
"Use the supercoder toolset for all code changes in this task.\n\n"
|
|
35
38
|
f"Task: {task}\n\n"
|
|
36
39
|
"Required sequence:\n"
|
|
37
|
-
"1. Use the supercoder_plan
|
|
40
|
+
"1. Use the plan below; call supercoder_plan for a fresh repo_map if needed\n"
|
|
38
41
|
"2. supercoder_read_window before each edit\n"
|
|
39
42
|
"3. supercoder_patch only with verified old_text hashes\n"
|
|
40
43
|
"4. supercoder_syntax_gate → supercoder_lint_gate → supercoder_test_gate after edits\n"
|
|
@@ -49,7 +52,9 @@ def handle_supercoder(raw_args: str, ctx: object | None = None) -> str:
|
|
|
49
52
|
if not task or task.lower() in {"help", "-h", "--help"}:
|
|
50
53
|
return SUPERCODER_HELP
|
|
51
54
|
try:
|
|
52
|
-
result = runner.plan(
|
|
55
|
+
result = runner.plan(
|
|
56
|
+
{"prompt": task, "cwd": str(Path.cwd()), **_SLASH_PLAN_KWARGS},
|
|
57
|
+
)
|
|
53
58
|
payload = json.loads(result.to_json())
|
|
54
59
|
if not payload.get("ok"):
|
|
55
60
|
return f"supercoder error: {payload.get('error', 'plan failed')}"
|
|
@@ -2,6 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import json
|
|
4
4
|
|
|
5
|
+
from cluxion_agentplugin_supercoder import runner
|
|
5
6
|
from cluxion_agentplugin_supercoder.slash_commands import (
|
|
6
7
|
SUPERCODER_HELP,
|
|
7
8
|
build_supercoder_directive,
|
|
@@ -28,6 +29,20 @@ def test_handle_supercoder_bypass(tmp_path, monkeypatch) -> None:
|
|
|
28
29
|
assert "not a coding task" in out
|
|
29
30
|
|
|
30
31
|
|
|
32
|
+
def test_handle_supercoder_skips_repo_map_for_fast_dispatch(tmp_path, monkeypatch) -> None:
|
|
33
|
+
monkeypatch.chdir(tmp_path)
|
|
34
|
+
captured: list[dict[str, object]] = []
|
|
35
|
+
|
|
36
|
+
def _spy(payload: dict[str, object]) -> runner.ToolResult:
|
|
37
|
+
captured.append(dict(payload))
|
|
38
|
+
return runner.plan(payload)
|
|
39
|
+
|
|
40
|
+
monkeypatch.setattr(runner, "plan", _spy)
|
|
41
|
+
handle_supercoder("implement pagination in the users API")
|
|
42
|
+
assert captured
|
|
43
|
+
assert captured[0].get("repo_map") is False
|
|
44
|
+
|
|
45
|
+
|
|
31
46
|
def test_handle_supercoder_returns_directive(tmp_path, monkeypatch) -> None:
|
|
32
47
|
monkeypatch.chdir(tmp_path)
|
|
33
48
|
(tmp_path / "a.py").write_text("x=1\n", encoding="utf-8")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/ARCHITECTURE.md
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/README.md
RENAMED
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/architecture.md
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/capabilities.md
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/design.md
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/installation.md
RENAMED
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/Docs/tools.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_cursor.py
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_doctor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_plugin.py
RENAMED
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_queue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cluxion_agentplugin_supercoder-0.2.15 → cluxion_agentplugin_supercoder-0.2.16}/tests/test_safety.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|