スキル一覧に戻る

probe-feature-flag-state

pjt222
更新日 6 days ago
20 閲覧
17
2
17
GitHubで表示
メタwordai

について

このスキルは、マルチエビデンスプロトコルを使用してCLIバイナリを調査し、名前付き機能フラグの実行時状態を判定します。フラグをLIVE、DARK、INDETERMINATE、UNKNOWNに分類し、結合ゲートやスキル置換などの複雑なシナリオも処理します。機能ロールアウトの検証、ダークローンチされた機能の監査、または新しいバイナリバージョンに対する調査結果の更新にご利用ください。

クイックインストール

Claude Code

推奨
メイン
npx skills add pjt222/agent-almanac -a claude-code
プラグインコマンド代替
/plugin add https://github.com/pjt222/agent-almanac
Git クローン代替
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/probe-feature-flag-state

このコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします

ドキュメント

探功旗態

定 CLI 二進中之名功旗為 LIVE、DARK、INDETERMINATE 或 UNKNOWN,用四叉據則:每態主配特察。

  • 能傳、文或推、需驗閘為當會發否→用
  • 審暗發功——碼於包而閉——以負責計合→用
  • 前探結對新版需更(旗或翻、除、合於合取)→用
  • 隨 Phase 1 (monitor-binary-version-baselines) 標、需於入 Phase 4 線捕前各候旗發態歸→用
  • 用見行變、需知為旗翻或碼變致之→用

  • :旗名如於二進(字面式)
  • :CLI 二進或包檔可讀、可呼
  • :對架常後之認會(己戶;勿他戶)
  • :二進版識——強薦使據表可對未來探差
  • :疑共閘列(恐合取與此者之他旗)
  • :同旗異版前探物為差析

一:確旗名於二進中(叉 A——二進字串)

自包出候旗名以確其為字面存。無此、後諸叉皆探虛。

# Locate the bundle (common shapes: .js, .mjs, .bun, packaged binary)
BUNDLE=/path/to/cli/bundle.js
FLAG=acme_widget_v3   # synthetic placeholder — replace with the candidate

# Confirm the literal exists
grep -c "$FLAG" "$BUNDLE"

# Capture every line where it appears, with surrounding context for Step 2
grep -n -C 3 "$FLAG" "$BUNDLE" > /tmp/flag-context.txt
wc -l /tmp/flag-context.txt

/tmp/flag-context.txt 標各為下之一:

  • gate-call——為閘形函首參(gate("$FLAG", default)isEnabled("$FLAG")flag("$FLAG", ...)
  • telemetry-call——為發/錄/追函首參
  • env-var-check——於 process.env.X(或等)查
  • string-table——於靜映或庫、用未明

得:包中至少一旗串、各標其呼點職。

敗:grep -c 返 0→旗不於此建。入名誤(拼、命名)或旗於此版除。重察 Phase 1 標出、後或正入或歸 REMOVED 而止。

二:別閘異於事異於環變

同串可為閘、遙標事、環變或皆。歸依呼點、非串。誤遙名為閘生謬理(「此閘必閉」)於非閘者。

各步一之標項:

  • gate-call 項使此串可入 LIVE/DARK/INDETERMINATE 歸。記閘所傳默值gate("$FLAG", false) 默為閉;gate("$FLAG", true) 默為開)。記面默與閘函名
  • telemetry-call使此串為閘。為他閘已過時發之標。若項皆 telemetry-call、串為事唯、末歸 UNKNOWN(名存而非閘)
  • env-var-check 項常示殺鈕(默開能由環變閉)或顯選入(默閉能由環變開)。注極性——if (process.env.X) { return null; } 為殺鈕;if (process.env.X) { enable(); } 為選入
  • string-table 項必交對——察表下游如何用

得:諸項皆有定呼點職與(閘者)記默值。

敗:閘呼境過縮不可讀默→展 grep 境(-C 10)察全呼。默仍不定→記 default=? 並降 LIVE/DARK 結為 INDETERMINATE。

三:察活呼為(叉 B——時探)

於己控之認會行架、察閘能浮否。此為單最高號叉:包述為、時示為。

擇探動以露閘過——常為閘護之用見行(具現於具列、命旗成有效、UI 元呈、應出現新欄)。

# Example shape — adapt to the harness
$CLI --list-capabilities | grep -i widget         # does the gated capability appear?
$CLI --help 2>&1 | grep -i "$FLAG"                # is a flag-related option exposed?
$CLI run-some-command --debug 2>&1 | tee probe-runtime.log

記三果之一:

  • 閘過察——能於會浮。歸候:LIVE
  • 閘過未察——能未浮。歸候依步二默(默假→DARK;默真→重察、可疑)
  • 閘過依不可重之入或境——記件;歸候:INDETERMINATE

得:記探動、察果、其指歸候。

敗:探動自誤(認敗、網不通、誤子命)→時叉於此回不用。修會或擇他探動;勿自未行之時推 DARK。

四:察盤態(叉 C——配、緩、會)

多架持閘評或覆值於盤以免重取。察此態示架於末評時所信於旗。

常處(合架——此為形非定徑):

# User-level config
ls ~/.config/<harness>/ 2>/dev/null
ls ~/.<harness>/ 2>/dev/null

# Per-project state
ls .<harness>/ 2>/dev/null

# Cache directories
ls ~/.cache/<harness>/ 2>/dev/null

# Search any of these for the flag name
grep -r "$FLAG" ~/.config/<harness>/ ~/.cache/<harness>/ .<harness>/ 2>/dev/null

各擊記徑、與旗合值、檔末改時。近改之緩項覆二進默為任向最強據。

得:確覆值含時、或確無(無盤態提此旗)。

敗:見旗提而不知記值為緩服應、用覆或陳值→標項為步五(平緩)和、勿猜。

五:察平旗服緩(叉 D)

若架用外功旗服(LaunchDarkly、Statsig、GrowthBook、商內等)、地緩之服應為今發態權威。可則察。

# Look for service-shaped cache files
find ~/.cache ~/.config -name "*flag*" -o -name "*feature*" -o -name "*config*" 2>/dev/null | head

# If a cache file is present, parse it for the flag name
jq ".[] | select(.key == \"$FLAG\")" ~/.cache/<harness>/flags.json 2>/dev/null

記緩值、緩時、(若有)緩 TTL。平緩 false 覆二進默 true;平緩 true 覆二進默 false

得:定緩值含時、或確無此架旗服緩。

敗:架無旗服或不能找緩→此叉無獻——可。注「叉 D:不適」於據表;勿猜。

六:處合取閘

某能由多旗皆真護:gate("A") && gate("B") && gate("C")。一者 DARK 即使能 DARK、然各旗歸仍各自。

# After finding the gate-call site for the primary flag in Step 2, scan the
# enclosing predicate for other gate(...) calls
grep -n -C 5 "$FLAG" "$BUNDLE" | grep -oE 'gate\("[^"]+"' | sort -u

各浮共閘串:

  • 重步一至五於該旗(各為己探)
  • 記各旗歸
  • 能級歸:諸合取皆 LIVE 則 LIVE;任合取 DARK 則 DARK;無 DARK 而至少一 INDETERMINATE 則 INDETERMINATE

得:諸合取識並各歸、加導出之能級歸。

敗:謂過縮不淨枚(呼點內聯或裹)→記合取為「≥1 加閘、構不可讀」並降能級歸為 INDETERMINATE 即首旗似 LIVE 亦然。

七:察技代

旗可實 DARK 而其用面能由異全支徑可至——異命、用呼技、他 API。誠發「旗 DARK、能 LIVE 由代」常重;忘之生慌暗發報於用實有之能。

任 DARK 或 INDETERMINATE 候歸:

  • 有文之用呼命、斜命或技達同末用果乎?
  • 有他 API 面(異端、異具名)返等資乎?
  • 架發用面延點(插件、自具、鉤)使用自組等乎?

任一是→於據行加 substitution: 注記他徑與其可察(用如何至、有文乎)。

得:諸 DARK/INDETERMINATE 歸、明代察——或徑、或明注「無代徑識」。

敗:疑代存而不能確徑→標「代疑;未確」勿任向斷。

八:合據表與末歸

合四叉為單表。每態主必配支察;新版重探生可差物。

FieldValue
Flagacme_widget_v3 (synthetic placeholder)
Binary version<version-id>
Probe dateYYYY-MM-DD
Prong A — stringspresent (3 occurrences: 1 gate-call default=false, 2 telemetry)
Prong B — runtimegate-pass not observed in capability list
Prong C — on-diskno override found in ~/.config/<harness>/
Prong D — platform cacheservice cache absent / not applicable
Conjunctionnone — single-gate predicate
Substitutionuser-invokable widget slash command delivers equivalent UX
Final stateDARK (capability LIVE via substitution)

施歸則:

  • LIVE——至少一叉於此會察閘過、且無叉反
  • DARK——旗串存、閘呼默 false、無叉察閘過、無覆翻之
  • INDETERMINATE——閘過依不可重之入或境、或閘默不可定、或一合取為 INDETERMINATE
  • UNKNOWN——串存而非閘用(telemetry 唯、string-table 唯、env-var 唯標)

存表為探物(如 probes/<flag>-<version>.md)以使未來探差之。

得:完據表涵四叉、合取態、代態、單末歸。

敗:無叉生用號(二進不可讀、時不可呼、盤與平緩皆無)→勿造歸。記 INDETERMINATE 由「無叉生號」並止。

  • 據表諸態主配特察(無裸斷)
  • 旗閘呼默值記(或明注不可讀)
  • Telemetry 事項不算閘據
  • 合取閘有各旗歸能級歸
  • 諸 DARK/INDETERMINATE 行有明代察
  • 物記二進版以使未來探可差
  • 無實品名、版定識、暗唯旗名於發物中(見 redact-for-public-disclosure

  • 混遙事為閘:於 emit("$FLAG", ...) 之串為標非閘。「遙唯」旗無發態當歸 UNKNOWN 非 DARK
  • 略叉 B(活呼):靜據單(二進述 default=false)異於時據(能未現)。二進默假可由服覆翻真;唯時探示會實得
  • 失合取:因首旗單項示 default=true 歸 LIVE 而忽周 && gate("B") && gate("C")→生假信 LIVE 於實由 B 或 C 閘之能
  • 無代察而稱 DARK:多 DARK 旗實不可至、然多有全支用呼徑。代察使「驚暗發」轉「誠發」
  • 探陳二進版:無版印之物無用——不可分為今或末季態。必記版、未來探對物差
  • 激閘以驗:翻旗以試非此技。某暗閘為安關(能未全、規押、遷未畢)。記;勿越
  • 捕他用態:叉 C、D 察盤態與緩。讀他用緩為流出、出範
  • 視 INDETERMINATE 為敗:非也——為據半時誠歸。迫 INDETERMINATE 為 LIVE 或 DARK 以使報似決為最速誤路

  • monitor-binary-version-baselines — 父引 Phase 1;此技建之標追供候旗錄
  • conduct-empirical-wire-capture — Phase 4;叉 B 表面探不足時之深時據(網捕、生命鉤)
  • security-audit-codebase — 暗發碼為攻面考古之分;此技為彼審之發半
  • redact-for-public-disclosure — Phase 5;定何探物可離私工區之減密律

GitHub リポジトリ

pjt222/agent-almanac
パス: i18n/wenyan-ultra/skills/probe-feature-flag-state
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

関連スキル

content-collections

メタ

このスキルは、Content Collections(Markdown/MDXファイルを型安全なデータコレクションに変換するTypeScriptファーストのツール)の本番環境でテストされた設定を提供します。Zodバリデーションによる型安全性を実現し、ブログ、ドキュメントサイト、コンテンツ重視のVite + Reactアプリケーション構築時にご利用ください。Viteプラグインの設定、MDXコンパイルから、デプロイ最適化、スキーマバリデーションまで、すべてを網羅しています。

スキルを見る

polymarket

メタ

このスキルは、開発者がPolymarket予測市場プラットフォームを活用したアプリケーション構築を可能にします。API統合による取引や市場データの取得に加え、WebSocketを介したリアルタイムデータストリーミングにより、ライブ取引や市場活動を監視できます。取引戦略の実装や、ライブ市場更新を処理するツールの作成にご利用ください。

スキルを見る

creating-opencode-plugins

メタ

このスキルは、開発者がコマンド、ファイル、LSP操作など25種類以上のイベントタイプにフックするOpenCodeプラグインを作成することを支援します。JavaScript/TypeScriptモジュール向けに、プラグイン構造、イベントAPI仕様、および実装パターンを提供します。カスタムイベント駆動ロジックでOpenCode AIアシスタントのライフサイクルをインターセプト、監視、または拡張する必要がある場合にご利用ください。

スキルを見る

sglang

メタ

SGLangは、高性能なLLMサービングフレームワークであり、RadixAttentionプレフィックスキャッシュを活用したJSON、正規表現、エージェントワークフロー向けの高速で構造化された生成を特長とします。特にプレフィックスが繰り返されるタスクにおいて、大幅に高速な推論を実現し、複雑な構造化出力やマルチターン対話に最適です。制約付きデコードが必要な場合や、広範なプレフィックス共有を伴うアプリケーションを構築する場合は、vLLMなどの代替案ではなくSGLangを選択してください。

スキルを見る