mcpField
T
temporal-awareness

temporal-awareness

github.com/jpcaparasエージェントワークフロー56110 回インストール1 日前に更新
リポジトリ

temporal-awareness について

temporal-awarenessは、信頼できる時刻情報とユーザーのタイムゾーンを使って、時間に関わる質問に対応するスキルです。安定した知識と最新確認が必要な情報を区別し、長時間のセッションで時刻情報を更新するルールも示します。

主な機能

  1. 01ローカル時刻とUTCの基準を取得
  2. 02ユーザーのタイムゾーンで相対日付を扱う
  3. 03最新情報の確認要否を判断
  4. 04長時間セッションの更新ルール
  5. 05スクリプトによる鮮度リスクの確認

活用シーン

  1. 01今日や明日に関する質問への回答
  2. 02タイムゾーンをまたぐ日時の変換
  3. 03バージョンや価格など変動情報の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jpcaparas/skills --skill temporal-awareness

インストール後、Claude Code で/temporal-awarenessを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

AGENTS.md
metadata.json
README.md
skill-card.prompt.md
agents/
openai.yaml
assets/
.gitkeep
evals/
evals.json
references/
bootstrap.md
gotchas.md
long-horizon.md
recency-triage.md
verification-patterns.md
scripts/
capture_temporal_context.py
probe_temporal_awareness.py
recency_guard.py
test_skill.py
validate.py
templates/
session-brief.md

詳細

temporal-awareness

時間に関わる回答では、信頼できる時刻の基準とユーザーのタイムゾーンを使用し、変化する外部の事実は別途確認してください。

判断ツリー

時間に関わる問題の種類はどれですか?

  • 回答前に明確なセッションの基準時刻が必要

    • 十分な場合は、新しく信頼できるセッション時刻と既知のユーザーのタイムゾーンを再利用します。
    • 情報が不足している、古くなっている、または境界時刻の計算が重要な場合は、python3 scripts/capture_temporal_context.py --format markdown を実行します(必要に応じて --extra-zone <user-zone> を追加します)。詳細は references/bootstrap.md を参照してください。
  • プロンプトに安定した知識で回答できるか、最新情報の確認が必要かを判断する

    • 主張の変動性と利用可能な根拠に基づいて判断します。scripts/recency_guard.py は任意の参考用ヒューリスティックであり、必須コマンドでも判断の代わりでもありません。
    • 判断が難しい場合は、references/recency-triage.md を参照してください。
  • latest、today、yesterday、tomorrow、タイムゾーンの計算、情報源の選択に関するパターンが必要

    • references/verification-patterns.md を参照してください。
  • 長時間のセッション、日付の切り替わり、定期的な作業に関する更新ルールが必要

    • references/long-horizon.md を参照してください。
  • 古い前提、更新前のモデル名、相対日付の誤りをデバッグする

    • references/gotchas.md を参照してください。

クイックリファレンス

タスクコマンドまたはファイル理由
不足または古くなったローカル時刻と UTC の時刻情報を取得するpython3 scripts/capture_temporal_context.py --format markdown既存の情報が不十分な場合に、信頼できる基準を確立する
現在の時刻を複数のタイムゾーンで比較するpython3 scripts/capture_temporal_context.py --format markdown --extra-zone America/New_York --extra-zone Europe/London気づかないうちにタイムゾーンがずれるのを防ぐ
参考用の最新性分類を取得するpython3 scripts/recency_guard.py --prompt "What is the latest release?" --format markdown評価すべきリスクを示す。必須の判断基準ではありません
決定論的なプローブスイートを実行するpython3 scripts/probe_temporal_awareness.py --format prettyスキルが引き続き設計どおりに動作することを確認する
起動時のワークフローを確認するreferences/bootstrap.mdセッションの読み込み順序と正確なコマンド
相対日付と変動する事実に対応するreferences/verification-patterns.md絶対日付への変換と情報源の選択

読み方ガイド

ユーザーの発言参照先
「回答する前に、こちらの日付と使用しているタイムゾーンを教えてください」references/bootstrap.md
「これはウェブで調べる必要がありますか。それとも情報は安定していますか」references/recency-triage.md
「ここでいう latest とは何ですか」references/verification-patterns.md
「このセッションは何時間も続いていますが、日付情報を更新するべきですか」references/long-horizon.md
「エージェントが古い製品、役職、価格をまだ挙げるのはなぜですか」references/gotchas.md

運用ルール

  1. セッションに、要求された精度を満たす十分に新しい信頼できる時計情報がすでにあるか確認します。十分であればそれを再利用し、情報がない場合や古くなっている場合、または日付の変わり目、夏時間、タイムゾーンをまたぐ境界の計算が関係する場合は、時計情報を取得します。
  2. ユーザーに関連する日付には、orb/サーバーのローカルタイムゾーンではなく、ユーザーの既知のタイムゾーンを適用します。タイムゾーンの変換には IANA ゾーンを使用します。重要なタイムゾーンが不明な場合は、ホストから推測せず、質問するか前提を明示します。
  3. 現在のモデル、バージョン、価格、法律、スケジュール、天気、幹部、ライブイベントなど、変動性の高い外部情報については、最新の信頼できる情報源を使用します。時計だけではこれらの事実を検証できません。最新情報を確認できない場合は、現行の情報だと断言せず、その制約を明示します。
  4. 曖昧さがある場合や境界が関係する場合は、相対日付を明示的な日付に変換します。プロンプトに時間を表す言葉が含まれているというだけで、時計情報の出力、ツールの実行、ウェブ閲覧を追加しないでください。
  5. 長い中断の後、ユーザーのタイムゾーンで日付が変わった後、夏時間の変更後、またはタイムゾーンの文脈が変わった後は、情報が最新か再評価します。回答に必要な情報だけを更新します。ローリング更新される外部データは、時計の基準が十分なままでも、情報源を再確認する必要がある場合があります。

検証済みの動作

  1. scripts/capture_temporal_context.py は、ローカル時刻と UTC のタイムスタンプ、タイムゾーン名の候補、UTC オフセット、ロケール、プラットフォーム、および任意の追加タイムゾーンのスナップショットを出力します。
  2. scripts/recency_guard.py は、相対日付を示す表現と変動性の高い分野を検出し、安定した過去についてのプロンプトと現在の状態についてのプロンプトを区別します。
  3. scripts/probe_temporal_awareness.py は、スモークテスト、境界ケース、否定的ケース、開示形式のシナリオにわたって決定論的なチェックを実行します。
  4. このスキルでは、記憶した既定値が常に最新だと仮定せず、モデルファミリーと製品バージョンを変動する情報として扱います。
  5. 長時間にわたるセッションでは、最初の時間基準がいつまでも有効だと仮定せず、明示的な更新ルールを適用します。

注意点

  1. 時計による基準設定と最新情報の確認を混同しないでください:システム時計でローカルの日付は分かりますが、今日の株価や現在の CEO は分かりません。
  2. 相対日付はタイムゾーンに依存します:ユーザーがローカル時間で考えているのに、暗黙に UTC を前提とすると、today、yesterday、tomorrow は誤りになります。
  3. 過去の事実と現在の状態に関する事実は異なります:Who won the 2024 election? は通常、変わらない情報ですが、Who is president now? は変わる可能性があります。
  4. モデル名はエージェントが認めるより速く変化します:直近で検証していない限り、モデルファミリー、バージョン、制限、提供状況は変動するものとして扱います。
  5. 長時間のセッションでは情報が古くなります:関連する日付の変わり目や夏時間の変更をまたぐ場合は、時間基準を更新し、必要に応じて日付を改めて明示します。

ガイダンスを最新に保つ

情報の不足や古くなっている疑いがタスクに影響する場合は、主張に適した最新の公式な時計/タイムゾーン/ツールのドキュメント、または信頼できる情報源を参照します。根拠が十分な場合は、定例的なウェブ閲覧を省略します。情報源を利用できない場合は不足している点を明示し、インストール済みコピーを自動編集するのではなく、正規パッケージ内の例やチェックとともに、情報源に基づく修正案を提示します。

ヘルパースクリプト

  • scripts/capture_temporal_context.py は、セッションですぐに使える時間基準を JSON、テキスト、または Markdown 形式で出力します。
  • scripts/recency_guard.py は、プロンプトを安定情報、システム時計に依存する情報、または最新情報の確認が必要な情報に分類します。
  • scripts/probe_temporal_awareness.py は、中核となるヒューリスティクス全体にわたって決定論的な回帰チェックを実行します。
  • scripts/validate.py は、構造、参照、評価の網羅性、および Python の構文を検証します。
  • scripts/test_skill.py は、パッケージ構成を検証し、時間認識プローブのテストスイートを実行します。

コメント