Skip to content

Release 0.5.0: agent neutral, Claude Code alongside Codex - #6

Merged
Con-Benksl merged 1 commit into
mainfrom
feat/agent-agnostic
Jul 26, 2026
Merged

Con-Benksl merged 1 commit into
mainfrom
feat/agent-agnostic

Conversation

@Con-Benksl

Copy link
Copy Markdown
Owner

The suite named Codex 127 times across 33 files, yet nothing in the safety model, the gate, or the diagnostics was ever Codex specific. This replaces the name with the role.

Terminology. English says "the agent"; Chinese says "Agent" (代理 was deliberately avoided: in this domain it means proxy). The term is defined at first use in both READMEs and the gate reference: whichever AI assistant operates for the user, Claude Code, Codex, or another Agent Skills compatible tool.

Scope of the sweep. Skill bodies (both copies), all references, both READMEs, the gate's reason and next-action strings, CLI help, report and scanner strings, validator anchors, test fixtures and assertions, and the per-skill agents/openai.yaml adapter prompts. CHANGELOG history keeps its original wording. The only remaining "Codex" mentions are deliberate: the install command examples and the sentence listing supported agents.

Breaking for in-flight plans. Guard strings are embedded in reviewed plans, so a pre-0.5.0 plan fails the guard comparison loudly and must be regenerated, the same behaviour as every prior contract change.

Claude Code support, verified not assumed. The pinned skills CLI was run against this repo and itself detected a Claude Code environment; install docs now cover --agent claude-code and --agent '*' alongside --agent codex. Structured question guidance names request_user_input (Codex) and AskUserQuestion (Claude Code).

Drive-by fix. One sentence in netops-build still described a block guard decision, which was removed in 0.3.2; every prior audit missed it. Now says warn with the informed-consent path.

414 tests pass; validate_skills, check_secrets, check_install_tree (flat copies identical) and release_check all clean.

🤖 Generated with Claude Code

The suite was written with Codex as the operator and named it 127 times
across 33 files. Nothing about the safety model, the gate, or the
diagnostics was ever Codex specific, so the name is replaced with the role:
"the agent" in English, "Agent" in Chinese (代理 was avoided because it
means proxy in this domain). Codex stays as one supported agent among
others rather than the assumed one.

- Docs, Skills, gate reason strings, CLI help, report/scanner strings,
  validator anchors, test fixtures and assertions all use the neutral term.
  CHANGELOG history keeps its original wording.
- Breaking for in-flight plans: guard reason and next-action strings are
  embedded in reviewed plans, so a pre-0.5.0 plan fails the guard
  comparison loudly and must be regenerated, matching every prior contract
  change.
- The term is defined at first use: the agent is whichever AI assistant
  operates for the user (Claude Code, Codex, or another Agent Skills
  compatible tool). Structured question guidance names request_user_input
  (Codex) and AskUserQuestion (Claude Code).
- Install docs cover --agent claude-code and --agent '*' alongside
  --agent codex, verified against the pinned skills CLI, which itself
  detects a Claude Code environment.
- The per-skill agents/openai.yaml adapter prompts use neutral wording so
  copying them for another adapter does not reintroduce the old name.
- Fixed a stale sentence in netops-build that still described a `block`
  guard decision, removed in 0.3.2.

414 tests pass; all five gates clean; flat copies synced and identical.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@Con-Benksl
Con-Benksl merged commit 6cac441 into main Jul 26, 2026
22 checks passed
@Con-Benksl
Con-Benksl deleted the feat/agent-agnostic branch July 26, 2026 12:45

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: fa5300189f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

"切换到与故障路径无关的网络,例如手机热点或另一条已验证线路。",
"只启动最后一次确认可用的代理配置,确认普通 HTTPS 可以访问。",
"重新启动 Codex,并说明刚才执行到哪一步、变更摘要或计划 ID 和备份位置。",
"重新启动 Agent,并说明刚才执行到哪一步、变更摘要或计划 ID 和备份位置。",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Preserve rollback access for pre-0.5 plans

Every pre-0.5 plan stores this exact emergency_steps text inside control_channel_guard, but load_plan() recomputes the guard and requires full equality at netops_core/change.py:1181-1187; because rollback_plan() calls that loader at line 3550, upgrading before rolling back an already-applied pre-0.5 plan now fails with “control-channel guard does not match” before the plan-bound backup can be restored. Keep display-only wording out of the equality-bound guard, or accept the legacy guard when loading a plan for rollback.

AGENTS.md reference: AGENTS.md:L8-L8

Useful? React with 👍 / 👎.

> **发布状态(0.4.0)**:本版本支持两种远端执行方式。与当前 Codex 路径无关的 VPS 可在影响确认后由 Codex 直接 SSH 操作;精确文件事务或共享远端路径可使用不可变计划与自动回滚。门禁的产出是 `allow` 或 `warn`,不再有无条件拒绝:`warn` 表示风险未消除,必须先展示风险卡,用户明确接受残余风险后仍可继续。硬拒绝只保留两类:不属于用户的设备,以及本版本未发布的功能。
> 本文中的 Agent 指正在替用户执行操作的 AI 助手,例如 Claude Code、Codex 或其他兼容 Agent Skills 的工具。规则对它们一视同仁。

> **发布状态(0.4.0)**:本版本支持两种远端执行方式。与当前 Agent 路径无关的 VPS 可在影响确认后由 Agent 直接 SSH 操作;精确文件事务或共享远端路径可使用不可变计划与自动回滚。门禁的产出是 `allow` 或 `warn`,不再有无条件拒绝:`warn` 表示风险未消除,必须先展示风险卡,用户明确接受残余风险后仍可继续。硬拒绝只保留两类:不属于用户的设备,以及本版本未发布的功能。

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Update the normative safety status to 0.5.0

In the newly released 0.5.0 tree, this authoritative safety reference still labels the current version as 0.4.0. Users consulting the 0.5.0 control-channel contract therefore see conflicting release metadata, so the status marker should be advanced with the rest of the release version references.

Useful? React with 👍 / 👎.

Comment thread netops_core/report.py
proxy_env = proxy_environment.get("set_variables", {})
lines.append(
"- Codex 控制通道:依赖关系未确认;TUN "
"- Agent 控制通道:依赖关系未确认;TUN "

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Migrate the diagnostic dependency field

When scan client is consumed through both promised outputs, this changed Markdown report calls the concept “Agent” while the accompanying JSON still emits environment.control_channel.codex_dependency from netops_core/scanner.py:740 (and the updated report test still constructs that legacy key). Claude Code and other integrations therefore receive a Codex-specific machine contract despite the release's agent-neutral claim; introduce an agent_dependency field with appropriate compatibility/schema handling and update the tests.

AGENTS.md reference: AGENTS.md:L13-L14

Useful? React with 👍 / 👎.

Comment thread README.md
When a proxy or VPS breaks, the hard part is almost never the missing command. It is not knowing **which segment** is broken: your laptop, your local network, the VPS inbound, the proxy routing, the upstream exit, or the destination itself. NetOps finds the segment before it touches anything.

It ships as a set of Agent Skills for Codex and Claude Code, plus a diagnostic CLI that uses only the Python standard library. You can describe a symptom in plain language, or run the scans yourself.
It ships as a set of Agent Skills for any coding or operations agent, Claude Code and Codex among them, plus a diagnostic CLI that uses only the Python standard library. You can describe a symptom in plain language, or run the scans yourself.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Limit the compatibility claim to Agent Skills clients

The new front-page wording says this suite works with “any coding or operations agent,” but the shipped integration consists of SKILL.md files and the install instructions only cover agents recognized by the Agent Skills CLI; an agent without Agent Skills discovery cannot load the router or its five workflows. This overstates compatibility beyond the narrower boundary already used in README.zh-CN.md:7 and references/control-channel-safety.md:3, so describe support as applying to Agent Skills-compatible agents instead.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant