返回顶部
s

ssh-guard

Intercepts SSH exec calls and pauses them for user approval. Supports one-time and session-wide approval modes, with automatic state cleanup when sessions end.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.3
安全检测
已通过
121
下载量
0
收藏
概述
安装方式
版本历史

ssh-guard

# SSH Guard Help the user install and enable the `ssh-guard` plugin from this repository. ## Channel Compatibility | Channel | Status | |---------|--------| | Telegram | ✅ Supported | | Feishu | ✅ Supported | | Mattermost | ✅ Supported | | Weixin | ❌ Not Supported | | Others | 🔍 Unverified | ## Workflow 1. Confirm the target OpenClaw environment and config file location. 2. Ask which approval language the user wants: - Chinese: `index.zh-CN.ts` - English: `index.en.ts` 3. Default to English if the user does not specify a language. 4. Ensure the plugin directory is reachable from `plugins.load.paths`. 5. Ensure `plugins.entries["ssh-guard"].enabled` is `true`. 6. Check the current top-level `session.dmScope` value first. 7. If it is already `per-channel-peer` or `per-account-channel-peer`, keep it and skip the selection step. 8. Otherwise, tell the user `session.dmScope: "main"` is not supported for this plugin in DM flows. 9. Ask the user to choose one of these top-level `session.dmScope` values: - `per-channel-peer` - `per-account-channel-peer` 10. Explain the two choices as OpenClaw session-routing behavior first: - `per-channel-peer`: DM session key is `agent:<agentId>:<channel>:direct:<peerId>`, so the same person gets a different DM session in each channel - `per-account-channel-peer`: DM session key is `agent:<agentId>:<channel>:<accountId>:direct:<peerId>`, so DM sessions are separated by channel, receiving account, and person 11. Then explain the plugin recommendation separately: - default to `per-channel-peer` - use `per-account-channel-peer` when one channel has multiple accounts and they should not share DM session state 12. If the user has no preference, default to `per-channel-peer`. 13. Explain whether the user should: - point OpenClaw directly at this repository directory, or - copy/symlink the files into an existing extensions directory 14. Remind the user to restart or reload OpenClaw after changing plugin config. ## Language Selection Use these entry files: - `index.zh-CN.ts`: Chinese approval prompts and approval keywords - `index.en.ts`: English approval prompts and approval keywords - `index.ts`: default entry and currently points to `index.en.ts` If the user wants Chinese prompts, either: - change the plugin entry to load `index.zh-CN.ts`, or - change `index.ts` to export `index.zh-CN.ts` If the user wants English prompts, keep the current default or point the entry to `index.en.ts`. ## Installation Rules - Prefer using this repository as the single source of truth for the plugin. - Do not describe the plugin as a generic policy skill first; it is primarily a publishable OpenClaw plugin repository. - When updating `openclaw.json`, make minimal changes: - add top-level `session.dmScope` if missing - add the plugin directory to `plugins.load.paths` if missing - add `ssh-guard` to `plugins.entries` if missing - set `enabled` to `true` unless the user explicitly wants it disabled - Use absolute paths in config examples. - Preserve existing plugin entries and load paths. - Do not offer `main` as a valid choice for this plugin's DM setup flow. - Present `per-channel-peer` and `per-account-channel-peer` as the recommended DM setup choices for this plugin. - If `session.dmScope` is already `per-channel-peer` or `per-account-channel-peer`, do not ask the user to change it. - Explain that group sessions are unaffected because OpenClaw already routes groups as `agent:<agentId>:<channel>:group:<groupId>`. ## Default Config Shape Show config updates in this form: ```json "session": { "dmScope": "per-channel-peer" }, "plugins": { "load": { "paths": [ "/absolute/path/to/ssh-guard" ] }, "entries": { "ssh-guard": { "enabled": true } } } ``` ## Repo Positioning When the user asks what this repository is for, explain: - this repository is mainly for publishing and reusing the `ssh-guard` plugin - the plugin blocks commands whose command text contains `ssh` until the user explicitly approves them - the repository also includes language-specific entry files so deployments can choose Chinese or English approval prompts - the plugin requires isolated top-level `session.dmScope` for DM use, and should not be installed with `session.dmScope: "main"` ## Notes - Prefer direct, actionable installation guidance over re-explaining the internal approval state machine. - If the user asks to install the plugin into another repo, update that repo’s config to reference this repository cleanly. - If language preference is unknown and no surrounding context suggests otherwise, choose English by default and mention that Chinese is available. --- 📦 Repository: https://github.com/yanbo92/ssh-guard

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 ssh-guard-1776058802 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 ssh-guard-1776058802 技能

通过命令行安装

skillhub install ssh-guard-1776058802

下载 Zip 包

⬇ 下载 ssh-guard v1.0.3

文件大小: 12.57 KB | 发布时间: 2026-4-14 10:19

v1.0.3 最新 2026-4-14 10:19
Update description to better explain the plugin's purpose

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部