Skip to content

Chore rebrand to shell security#14

Merged
St0rmz1 merged 9 commits intomainfrom
chore/rebrand-to-shell-security
Apr 22, 2026
Merged

Chore rebrand to shell security#14
St0rmz1 merged 9 commits intomainfrom
chore/rebrand-to-shell-security

Conversation

@St0rmz1
Copy link
Copy Markdown
Collaborator

@St0rmz1 St0rmz1 commented Apr 22, 2026

Summary

Completes the rename of the plugin from @kilocode/openclaw-security-advisor to @kilocode/shell-security. Restores the audit logic that the 0.1.5 stub release removed, applies the new name across code and docs, adds a new /shell-security slash command alongside the existing /security-checkup (kept as a legacy alias), and bumps package.json to 0.2.0 ready for the one time manual bootstrap publish under the new npm slug.

Changes

  • npm package name, GitHub repo URL, OpenClaw plugin id (shell-security), display name (ShellSecurity), and tool name (kilocode_shell_security).
  • PLUGIN_ID and PROVIDER_ID constants in src/auth/token-store.ts. Install directory moves to ~/.openclaw/extensions/shell-security/ and the secret file to ~/.openclaw/secrets/shell-security-auth-token.
  • Two slash commands registered, both routed to the same handler: /shell-security (canonical, matches the plugin id) and /security-checkup (legacy alias for users migrating from the old plugin).
  • Tool description expanded with trigger phrases so capable models match natural language requests reliably, plus an explicit instruction not to open a terminal when the user says "shell".
  • GitHub Actions publish.yml repo guard, registry probe, and recovery copy updated to the new repo slug. script/publish.ts and script/version.ts updated to the new npm package name.
  • README, AGENTS, CHANGELOG, and RELEASING updated. README has a new migration section including a note about updating tools.alsoAllow if the old tool was pinned there. RELEASING has a new section documenting the one time OIDC bootstrap required for the first publish of a freshly named npm package.
  • Server API route URL is intentionally unchanged so this release does not require a coordinated server change.

Test plan

  • bun run typecheck passes
  • bun test passes (49 tests)
  • bun run format:check passes
  • Built tarball with bun pm pack, installed in local docker openclaw gateway
  • Both slash commands run end to end, return full reports
  • Device auth flow completes, token lands at ~/.openclaw/secrets/shell-security-auth-token
  • Natural language invocation via kilocode_shell_security succeeds on capable models; documented small model failure mode in README

Post merge

  1. Manual bootstrap publish of @kilocode/shell-security@0.2.0 using a classic npm automation token (OIDC cannot be configured until the package slug exists).
  2. Create v0.2.0 git tag and GitHub release by hand.
  3. Configure npm Trusted Publishers on npmjs.com pointing at Kilo-Org/shell-security + publish.yml.
  4. Subsequent releases go through the normal workflow dispatch.

St0rmz1 added 6 commits April 22, 2026 11:19
This reverts commit 5e8eb6d8..., reversing changes made to 30be658c.
Restores the audit logic from v0.1.4 as the base for the rename to @kilocode/shell-security.

This reverts commit 5e8eb6d, reversing
changes made to 30be658.
  Renames the plugin's identity from OpenClaw Security Advisor /
  @kilocode/openclaw-security-advisor to ShellSecurity /
  @kilocode/shell-security, to match the renamed repo
  (Kilo-Org/openclaw-security-advisor → Kilo-Org/shell-security).

  - package.json: name → @kilocode/shell-rity; repo URL.
  - openclaw.plugin.json: id → shell-security; display name → ShellSecurity.
  - index.ts: plugin id, display name, tool name (kilocode_shell_security),
    reload noop prefix, log tags, and user-facing config-path references.
  - src/auth/token-store.ts: PLUGIN_ID, PROVIDER_ID (kilocode_shell_security)
    → changes install dir, secret file, and pending-code file paths.
  - src/auth/device-auth.ts: debug log tag.
  - .github/workflows/publish.yml: repo guard + registry probe + recovery
    copy point at Kilo-Org/shell-security / @kilocode/shell-security.
  - script/publish.ts, script/version.ts: NPM_PACKAGE and log copy.
  - README.md: rename banner, migration block from old plugin, install
    commands, tool name, config path, package name, doc links.
  - CHANGELOG.md: [0.2.0] rename entry; [0.1.5] stub entry; retro-dated
    [0.1.4] for the channel-forwarding changes; updated compare links.
  - RELEASING.md: bulk replace to new package / repo names.
  - AGENTS.md: package name banner, @dev install, code-layout section.
  - test/token-store.test.ts: updated hardcoded secret path + key names.

  Server API route URL (/api/security-advisor/analyze) is intentionally
  unchanged so this publish does not require coordinated server changes.
  /security-checkup slash command name is also unchanged.
@St0rmz1 St0rmz1 changed the title Chore/rebrand to shell security Chore rebrand to shell security Apr 22, 2026
Comment thread index.ts
Comment thread src/audit.ts Outdated
Comment thread src/auth/device-auth.ts Outdated
Comment thread CHANGELOG.md
@kilo-code-bot
Copy link
Copy Markdown

kilo-code-bot Bot commented Apr 22, 2026

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (2 files)
  • CHANGELOG.md
  • src/auth/device-auth.ts

Reviewed by gpt-5.4-2026-03-05 · 1,015,388 tokens

St0rmz1 added 2 commits April 22, 2026 12:19
  1. Plugin-managed authToken now falls through to file-based auto re-auth
     instead of dead-ending at a 'update your openclaw.json' message on
     401. Added isPluginManagedAuthToken() in token-store; Path 0 in
     runShellSecurityFlow now skips when the raw config's authToken is a
     SecretRef pointing at our own provider (the shape writeStoredToken()
     always writes). Covered by 5 new unit tests in token-store.test.ts.

  2. getPublicIp() now clears its 5s abort timer in a finally block so
     dangling timeouts don't accumulate across failed checkups.

  3. Device-auth poll requests now carry a per-request 10s AbortController
     so a hung HTTP call can't outlive the overall 30s POLL_TIMEOUT_MS.
     Cleared in finally so every loop iteration is interruptible.

  4. CHANGELOG regained its '## [Unreleased]' heading per the release
     workflow documented in AGENTS.md + RELEASING.md, and the three fixes
     above are logged under it.
Comment thread src/auth/device-auth.ts
@St0rmz1 St0rmz1 merged commit e350850 into main Apr 22, 2026
7 checks passed
@St0rmz1 St0rmz1 deleted the chore/rebrand-to-shell-security branch April 22, 2026 20:01
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.

2 participants