← 返回 Skills 市场
noambens

Agent Changelog

作者 NoamBenS · GitHub ↗ · v1.2.3 · MIT-0
cross-platform ⚠ suspicious
129
总下载
1
收藏
0
当前安装
6
版本数
在 OpenClaw 中安装
/install agent-changelog
功能描述
Advanced handling for agent-changelog requests (history, diffs, restores, rollbacks, snapshots) using git and OpenClaw scripts with clear, user-focused summa...
使用说明 (SKILL.md)

Agent Changelog

OpenClaw tracks workspace file changes between turns and attributes them to the user who triggered the change. Use this skill to answer history and diff questions and to apply controlled restores or rollbacks.

When To Use

Use this skill when the user asks about:

  • What changed, who changed it, or when it changed
  • Diffs between versions or commits
  • Rolling back or restoring files
  • Taking or inspecting snapshots or status
  • Setting up or verifying auto-versioning
  • Pulling a specific version or label from PromptLayer

Response Framework

  1. Clarify intent and scope.

    • Determine whether the user wants a quick summary or raw output.
    • Pin down file(s), time range, and commit identifiers if needed.
  2. Choose the evidence source.

    • Casual queries: use git to gather a compact view.
    • Explicit /agent-changelog invocations: run the matching script and return stdout verbatim.
  3. Present results clearly.

    • Summarize what changed, who triggered it, and the rough size.
    • Offer the next most likely action (diff, restore, rollback, or log).
  4. Handle destructive actions safely.

    • Always show what will change before a rollback or restore.
    • Prefer restore for single-file fixes; use rollback only when the user wants to revert everything.
    • If the target commit is ambiguous, ask a clarification question.
  5. Guide sync onboarding after setup.

    • After setup, proactively ask: "ok want help with github or promptlayer? (pick one)"
    • If yes, walk them through the chosen provider with no extra setup steps required on their side.
    • Confirm account status, credentials, and configuration for the selected provider.

Output Style

  • For summaries, keep it short and conversational.
  • For script-driven output, do not reformat or summarize; if onboarding guidance is needed, provide it after the raw output.
  • If an argument looks like a typo, confirm before running.

File Content Rules

Never embed attribution metadata inside file content. Do not add inline annotations like (updated by X on date), # changed by Y, status footnotes, or any other authorship/timestamp markers into the files you edit. Attribution belongs exclusively in the git commit message, which is handled automatically by the hooks and commit.sh. Files should contain only their actual content — clean, annotation-free.

Implementation Notes

  • Casual history or diff: use a small git window (last 5-10 commits) and include stat output.
  • Slash commands: use the scripts in setup.sh and scripts/ with the user-provided arguments.
  • Setup: run the setup script, then ask "ok want help with github or promptlayer?" and proceed if they confirm.
  • Restore or rollback: locate the commit via log, then perform the change after showing what will be modified.
  • Semantic summary: before every commit, run a quick diff and generate a sparse one-line summary of what changed and why (e.g. "added rate-limit rule to AGENTS.md, updated memory skill"). Always pass it via --summary and always include it in any history output presented to the user.
  • Log output: log.sh outputs raw structured data — present it conversationally based on what the user asked. Don't dump raw script output. Format each entry using the -prefixed box style (same as status output), one entry per block.

Command Reference (Compact)

Use this only for explicit /agent-changelog invocations, and return stdout verbatim.

  • setup -> bash {baseDir}/setup.sh
  • setup follow-up -> Sync onboarding guidance (GitHub or PromptLayer)
  • status -> bash {baseDir}/scripts/status.sh
  • log -> bash {baseDir}/scripts/log.sh [count]
  • diff -> bash {baseDir}/scripts/diff.sh [commit] [commit2]
  • rollback -> bash {baseDir}/scripts/rollback.sh \x3Ccommit> ["reason"]
  • restore -> bash {baseDir}/scripts/restore.sh \x3Cfile> \x3Ccommit> ["reason"]
  • commit (user-requested) -> bash {baseDir}/scripts/commit.sh --manual ["message"] [--summary "one-line semantic summary"]
  • commit (cron-triggered) -> bash {baseDir}/scripts/commit.sh [--summary "one-line semantic summary"]
  • pull from promptlayer -> node {baseDir}/scripts/pl-pull.js
  • pull from promptlayer version \x3Cn> -> node {baseDir}/scripts/pl-pull.js --version \x3Cn>
  • pull from promptlayer label \x3Clabel> -> node {baseDir}/scripts/pl-pull.js --label \x3Clabel>
  • pull from promptlayer version \x3Cn> reason \x3Ctext> -> node {baseDir}/scripts/pl-pull.js --version \x3Cn> --reason "\x3Ctext>"

Auto-Versioning Overview

Two hooks capture and commit changes between turns and attribute them to the active user. Defaults can be overridden via .agent-changelog.json.

Tracked by default: . (entire workspace). Secrets and runtime files are excluded via the .gitignore that setup creates — note that if a .gitignore already exists in the workspace, setup leaves it untouched, so ensure it covers secrets before enabling tracking.

To track a specific subset instead, edit \x3Cworkspace>/.agent-changelog.json with a tracked array (this fully replaces the default):

{ "tracked": ["\x3Cfile-or-folder>", "\x3Cfile-or-folder>"] }

GitHub Onboarding (Setup Add-on)

Use this flow after setup to help users connect the workspace to GitHub. The user will need to authenticate (SSH key or HTTPS credential) — walk them through it step by step:

  1. Account and intent. Confirm they have a GitHub account and want this repo linked.
  2. Git identity. Ensure user.name and user.email are set for commits.
  3. Auth method. Offer SSH or HTTPS; proceed with their preference.
  4. Remote and verify. Ensure an origin remote exists and verify access.
  5. Enable sync. Set github.enabled = true in \x3Cworkspace>/.agent-changelog.json to activate auto-push on each batch commit.
  6. Next action. Create or select the GitHub repo, then push or fetch as needed.

PromptLayer Onboarding (Setup Add-on)

Use this flow after setup to help users connect the workspace to PromptLayer. Keep it conversational like the GitHub flow and ensure they pick PromptLayer (not both).

  1. Intent. Confirm they want PromptLayer sync for this workspace.
  2. API key. Ask for the API key and set it as PROMPTLAYER_API_KEY in their environment (e.g. shell profile or OpenClaw env config). The scripts read it from the environment; do not write the raw key value into any config file.
  3. Collection choice. Ask whether to connect to an existing collection or create a new one.
  4. Dependency check. PromptLayer pulls require unzip (macOS/Linux) or PowerShell Expand-Archive (Windows).
  5. Config. Collection metadata (collectionId, skillName, provider) is stored in .agent-changelog.json in the workspace — the scripts handle this automatically. The only openclaw.json entry written is the SecretRef: skills.entries.agent-changelog.apiKey = { source: "env", provider: "default", id: "PROMPTLAYER_API_KEY" }.
  6. Connect.
    • Existing: run node {baseDir}/scripts/pl-pull.js --connect \x3Cname-or-id>
    • New: run node {baseDir}/scripts/pl-init.js after setting promptlayer.skillName
  7. Confirm. Verify the collection ID and explain that future batch commits sync to PromptLayer.
安全使用建议
This skill implements on-disk hooks and a cron job that auto-stages and batches commits of your workspace and can optionally push or upload snapshots to external services (GitHub or PromptLayer). Before installing: 1) Do not set PROMPTLAYER_API_KEY unless you intend to enable PromptLayer sync; the metadata marks it required but the integration is optional. 2) Inspect and tighten .agent-changelog.json so only the files you want are tracked (avoid tracking the entire workspace if you have secrets). 3) If a .gitignore already exists, verify it excludes secrets before setup — setup will leave an existing .gitignore untouched. 4) Review the openclaw.json changes (setup enables hooks and may add a skills entry) and the cron registration; remove the cron if you don't want automatic commits. 5) If you allow PromptLayer, be aware it uploads a zip of your workspace to api.promptlayer.com — only enable that if you trust the service and have removed any sensitive data. Finally, consider testing this in an isolated workspace (not your primary repo) first.
功能分析
Type: OpenClaw Skill Name: agent-changelog Version: 1.2.3 The `agent-changelog` skill is a legitimate version control and synchronization tool for OpenClaw workspaces. It uses Git to track file changes with user attribution, provides hooks for automated staging, and includes scripts for syncing with GitHub and PromptLayer (api.promptlayer.com). The skill demonstrates security-conscious design by automatically generating a robust `.gitignore` to prevent secret leakage and instructing the AI agent to handle API keys via environment variables rather than hardcoding them in configuration files.
能力标签
requires-sensitive-credentials
能力评估
Purpose & Capability
The skill's core purpose (workspace changelog via git and OpenClaw hooks) matches the majority of files and scripts. However, the registry/metadata requires PROMPTLAYER_API_KEY and node unconditionally even though PromptLayer integration is optional. Requiring a PromptLayer API key as a mandatory env var is disproportionate to the stated purpose (local changelog + GitHub).
Instruction Scope
SKILL.md and the scripts stay within the stated domain: they read/write the workspace, create hooks, stage commits, present diffs/logs, and optionally sync to external providers. Important behavior to note: pl-init/pl-push/pl-pull will send/receive a full snapshot (zip) of the workspace to/from api.promptlayer.com; setup modifies the global OpenClaw config to enable hooks and register a cron. The skill also writes transient files (.version-context, pending_commits.jsonl) and may stage/commit many files — users should ensure tracked files and .gitignore are correct before enabling sync. The instructions do not attempt to read unrelated system config or arbitrary secrets, but they do use OPENCLAW_CONFIG to read/write OpenClaw settings.
Install Mechanism
No remote download/install of arbitrary code is used; setup.sh copies provided hooks into the user's workspace and updates local OpenClaw config. All code is bundled with the skill (no URL fetches of executables), so install mechanism is low-risk from a supply-chain perspective.
Credentials
OPENCLAW_WORKSPACE and OPENCLAW_CONFIG are reasonable. PROMPTLAYER_API_KEY is declared as required in metadata but PromptLayer is optional — that’s disproportionate. If the user enables PromptLayer, the skill will upload a zip snapshot of the workspace to PromptLayer using that API key, which can expose files if .gitignore/tracking is misconfigured. The skill updates openclaw.json to reference the API key (as an env-based secret reference) but does not itself store raw keys in the workspace; still, requiring or supplying the API key enables remote exfiltration of workspace contents.
Persistence & Privilege
The skill modifies OpenClaw config and can register a cron job to run commit.sh automatically (every 10 minutes by default). always is false (good). Hooks run on message events and stage/commit workspace files; this is expected for the feature but does give the skill persistent presence and periodic activity. Combined with optional PromptLayer/GitHub sync, that persistence could lead to repeated remote uploads if configured — review cron and config changes after setup.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install agent-changelog
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /agent-changelog 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.2.3
- Added PROMPTLAYER_API_KEY to required environment variables in metadata. - No other changes detected to functionality, behavior, or documentation.
v1.2.2
No code or documentation changes detected in this version. - Cron job now done through a guard that checks for anything to commit - does not spawn a new agent to handle commit if there is nothing to commit. Saves significantly on token usage.
v1.2.1
- Added PROMPTLAYER_API_KEY as a required environment variable in metadata to support PromptLayer integration. - No other changes to functionality, documentation, or implementation.
v1.1.0
**PromptLayer integration and sync onboarding flow added.** - Added support for pulling specific versions or labels from PromptLayer with new pl-init.js, pl-pull.js, and pl-push.js scripts. - Updated setup and onboarding guidance: after setup, users can choose GitHub or PromptLayer sync. - Expanded command reference and onboarding sections to cover PromptLayer connection, config, and authentication steps. - No changes to file content rules or core git-based features.
v1.0.1
- Expanded required dependencies to include jq, node, and two environment variables: OPENCLAW_WORKSPACE and OPENCLAW_CONFIG. - Updated GitHub onboarding section: users must now authenticate (SSH key or HTTPS credential), and the process is more explicitly step-by-step. - No code or functional changes; documentation improvements only.
v1.0.0
Initial release with advanced agent changelog management. - Supports history, diff, restore, rollback, and snapshot requests using git and scripted commands. - Provides concise summaries about what changed, who made changes, and when. - Includes safety checks before destructive actions (restore, rollback), with confirmation prompts. - Guides users through GitHub onboarding after setup, ensuring smooth remote linking. - Keeps file content annotation-free; all attribution is handled in commit messages only. - Auto-versioning and setup are fully script-driven, with clear help and output handling.
元数据
Slug agent-changelog
版本 1.2.3
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 6
常见问题

Agent Changelog 是什么?

Advanced handling for agent-changelog requests (history, diffs, restores, rollbacks, snapshots) using git and OpenClaw scripts with clear, user-focused summa... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 129 次。

如何安装 Agent Changelog?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install agent-changelog」即可一键安装,无需额外配置。

Agent Changelog 是免费的吗?

是的,Agent Changelog 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Agent Changelog 支持哪些平台?

Agent Changelog 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Agent Changelog?

由 NoamBenS(@noambens)开发并维护,当前版本 v1.2.3。

💬 留言讨论