monitor-binary-version-baselines
关于
This skill establishes versioned baselines for CLI binaries by detecting and scoring categorized markers (like API endpoints or flags) across releases. It enables tracking feature lifecycles, uncovering hidden capabilities, and verifying scanning tool accuracy. Developers use it for longitudinal analysis of binary changes, using weighted scoring and threshold-based detection.
快速安装
Claude Code
推荐npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/monitor-binary-version-baselines在 Claude Code 中复制并粘贴此命令以安装该技能
技能文档
察二進文件版本基線
建並養版本對照之記,察 CLI 二進文件中各功能標記之有無,以機械之法察諸版間之增、刪、暗放。
用時
- 跨多版閉源 CLI 之功能生滅軌跡欲察乃用
- 暗放(已發而未啟)或暗刪之能欲探乃用
- 標記掃器於舊文件能否察已知標記欲驗(自察其器)乃用
- 第一階基底欲建(後階如旗識、暗察、線聞用之)乃用
- 凡一時之
grep答「今有 X 否」不足,須察「X、Y、Z 之系統諸版間如何遷」者乃用
入
- 必要:同一 CLI 一或多裝版(或解包之物)
- 必要:標記目錄之工作文件(首次運行時建,跨版擴之)
- 可選:先前掃描所留之基線文件(原地擴,勿改寫)
- 可選:未發版本之名單(跳發者、撤回者)
- 可選:已在察之功能系統列表,以擴而非重發
法
第一步:依類選標記
選經重建尚存之字串。取穩固有義之識別,勿取打包器下次必改之短名。
六類可選:
- API — 端路、CLI 網絡面所示之方法名
- 識別 — 內部產品名、代號、版本標識
- 配置 — 用者配置文件中可識之鍵
- 遙測 — 上報分析管道之事件名
- 旗 — 功能門所讀之鍵
- 函 — 特定處理器中所用之知名字串(錯訊、日誌標籤)
避之:似縮短之識別(如 _a1、bX、二字母加數字者)、隨文修而變之內聯字面、合打包器內部命名規則者。
得: 各候標記皆有類別標識與簡短依據(「見於用者文檔」「跨 N 版穩定」之屬)。常初次得每系統 20-50 標記。
敗則: 標記於連續小版間消失者,目錄所收乃重建即變之字串,非穩固識別。刪此類,改取更長、更具語義之子串。
第二步:依功能系統聚標記
每一獨立演化之能聚為一系統表。「系統」者,標記之有無共進退者也,蓋共一功能生滅週期(如假想之 acme_widget_v3 諸標記)。
聚之何要:依系統評分防混染。一系統標記之缺不可抑另一系統之察,跨無關系統之總計亦無意。
工作目錄之形(偽碼):
catalog:
acme_widget_v3:
markers:
- { id: "acme_widget_v3_init", category: function, weight: 10 }
- { id: "acme.widget.v3.dialog.open", category: telemetry, weight: 5 }
- { id: "ACME_WIDGET_V3_DISABLE", category: flag, weight: 10 }
acme_other_system:
markers:
- ...
得: 各系統有獨立標記列;無一標記同屬二系統。增新系統者,加新頂層條目——勿事後將標記於系統間遷。
敗則: 標記難歸一系統者(重疊、含混),系統定義過粗。分之,或承認某些標記為「共享底層」並將其排於系統評分之外。
第三步:依信號強度賦權
各標記賦一權,以示其單獨呈現足以證系統之程度:
- 10 = 單獨即診 — 獨特至此標記一見即足證系統存在(如長而系統獨有之字串,無他路徑能發)
- 3-5 = 僅佐證 — 單獨過泛,然合計則有助(如 CLI 跨功能複用之短遙測後綴)
教其法,非教其數。「診」與「佐」之差距比具體整數重——所重者,第五步之閾可分辨「一強信號」與「多弱信號」。
得: 各標記有權。目錄之權分布偏向佐證者(3-5),每系統有少量單獨即診者(10)。
敗則: 凡標記皆權 10 者,評分失辨——部分呈現之察無從。降跨系統重複出現或現於無關處理器者之權。
第四步:記每版基線
每版掃之,記呈現與缺席之標記,依版為鍵。二者皆證:版 N 之缺席標記,當版 N+1 復引時,與呈現者同樣有報。
基線之形:
baselines:
"1.4.0":
acme_widget_v3:
present: ["acme_widget_v3_init", "ACME_WIDGET_V3_DISABLE"]
absent: ["acme.widget.v3.dialog.open"]
score: 20
"1.5.0":
acme_widget_v3:
present: ["acme_widget_v3_init", "ACME_WIDGET_V3_DISABLE", "acme.widget.v3.dialog.open"]
absent: []
score: 25
"1.4.1":
_annotation: "never-published; skipped from upstream release timeline"
未發版本明示註解,勿默略。默略之版於後人視為失據。
得: 各版生一記,每受察系統有 present、absent、score,或明示 _annotation 為未發。
敗則: 掃描得零標記於先前有者,勿即定為刪除——先驗二進路徑無誤、strings 命有出、標記識別與目錄完全合。假零腐蝕長記。
第五步:定全察與部分察之閾
每系統定二門,施於合計分:
full— 此分以上者,系統於此版視為呈現且活partial— 此分以上者,系統視為已發未全(標記部分呈,然在full之下)
partial 以下者 = 缺席(或未至,視軌跡方向)。
thresholds:
acme_widget_v3:
full: 25
partial: 10
定閾之法:full 設為健全裝置應發之權合;partial 設為一診標記加一佐證信號。得多版證據後再校。
得: 各掃為各系統生標籤之察:full | partial | absent。partial 者宜深察——暗放與暗刪之候選。
敗則: 凡系統凡版皆報 partial 者,閾過敏(多設高於標記和能達者)。對已知活版重校之。
第六步:以 strings -n 8 掃
以 strings 加最短長過濾為提取之器。-n 8 之底濾大半雜(短片、墊、地址表渣)而不失有義之識別,蓋識別常逾八字。
strings -n 8 path/to/binary > /tmp/binary-strings.txt
繼以目錄對 /tmp/binary-strings.txt 匹(任行向匹配器:grep -F -f markers.txt、ripgrep、或小腳本)。
警:
- 較低(
-n 4、-n 6)淹輸出於二進渣與縮符雜;診與佐之分崩 - 較高(
-n 12+)失短旗識與配置鍵 - 某些打包器壓或編字串;若
strings出近空,文件或須先解包(此技之外)
得: 一行一字之輸出,自千行至十萬行,視文件之大。前百行手察應見可識識別。
敗則: 輸出空或不可識者,文件或為打包、加密、或字節碼之屬,strings 無能讀。止於提取層解之;勿從不可讀之掃記基線。
第七步:基線向前擴而不改寫舊記
新系統或新標記入目錄者,唯掃前向版本。舊版記如初書留之。
何以然:舊版基線者,當時所掃之經驗證據,非舊版內容之當前模型。事後以新發之標記改寫,混「今所知」與「彼時所察」。二者皆有用;唯一可居基線文件。
事後掃確需者(如察新標記是否現於 N-3 版),記為獨立附:
addenda:
"1.4.0":
scan_date: "2026-04-15"
catalog_revision: "v7"
findings:
acme_new_system:
present: ["..."]
原 baselines["1.4.0"] 條不動。讀者可見原記與後事後掃,連同各自目錄版本。
得: 基線文件單向前增;舊記僅追加,附以可選附塊。目錄版本有版識,每掃可繫於當時所用之目錄狀。
敗則: 若覺欲直改舊版 present 列,止。改加附。改舊記者失察器退化之能(後掃器驗證之第八步依賴歷史不可變)。
驗
- 目錄每標記皆有明示類標識(API / identity / config / telemetry / flag / function 之一)
- 每標記恰歸一系統;無同屬二系統者
- 權跨真實範圍(有 10 有 3-5);勿全同
- 每受掃版有記,每受察系統有
present、absent、score - 未發版本明示註解,勿默略
- 每系統有
full與partial二閾;察依此標籤 -
strings -n 8為提取之器(或非文文件之等效記錄) - 舊版記不為新掃所改;事後新發歸附塊
陷
- 以具體所察為目錄。 目錄宜述標記類與形,勿列版鎖之字面。滿是察形之目錄速朽,且若誤公佈為最大泄漏之險。
- 收縮符識別。
_p3a、q9X之屬,每重建即更名。今合明日為雜。守有義之識別。 - 混遙測事件與功能旗。 多 CLI 中二者命名相近然功能各異。依類標之(第一步)以使依類分析清。
- 默略未發版本。 版序之缺無註解者似漏掃。明示之:
_annotation: "never-published"。 - 無基線數據前先設閾。 首掃定經驗權合計;依此校閾,勿先設。
- 目錄擴時改寫舊版記。 舊記乃證;附為事後掃之支持模式。
- 信空掃出。 零標記不必為「缺」。先驗文件可讀、目錄識完合,再宣刪。
- 以
strings -n 4較-n 8為詳。 較低之底加雜速於信號。診標記幾必逾八字。
參
security-audit-codebase— 共學;二管道皆視標記呈現為察,下游消費者異audit-dependency-versions— 同樣版本軌跡之嚴施於外部依賴清單;此技施於二進物probe-feature-flag-state— 第二三階後續;用基線分類旗鋪展態(live / opt-in / dark / removed)conduct-empirical-wire-capture— 第四階後續;以實際 CLI 流量驗推斷行為redact-for-public-disclosure— 第五階後續;管何察可離私域
GitHub 仓库
相关推荐技能
qmd
开发这是一个本地搜索和索引的CLI工具,支持BM25、向量搜索和重排序功能。开发者可以用它快速索引本地文件(如Markdown文档)并进行混合搜索,特别适合代码库或文档的本地检索。它还提供MCP模式,能轻松集成到Claude开发环境中使用。
subagent-driven-development
开发该Skill用于在当前会话中执行包含独立任务的实施计划,它会为每个任务分派一个全新的子代理并在任务间进行代码审查。这种"全新子代理+任务间审查"的模式既能保障代码质量,又能实现快速迭代。适合需要在当前会话中连续执行独立任务,并希望在每个任务后都有质量把关的开发场景。
mcporter
开发mcporter Skill 让开发者能在Claude中直接管理和调用MCP服务器。它支持列出可用服务器、调用工具、处理OAuth认证以及管理服务器守护进程。开发者可以通过命令行式交互快速执行`mcporter list`查看服务器,或使用`mcporter call`直接调用工具,简化了MCP工作流程。
adk-deployment-specialist
开发这是一个用于部署和编排Google Vertex AI ADK智能体的Claude Skill,专为构建生产级多智能体系统而设计。它支持通过A2A协议进行智能体通信,提供代码执行沙箱和记忆库功能,并能处理智能体发现与任务提交。当开发者需要部署ADK智能体或编排多智能体协作时,可使用此Skill来简化Vertex AI Agent Engine的部署流程。
