Codexで謎のシステムメンテ通知を活用し集中力を攪乱する方法

  • URLをコピーしました!
目次

Codex ユーザーが日常でぶつかる悩み

Codex を日々使い込んでいると、AI coding workflow の中で「context の迷子」「repo 構造の混乱」「directory や path の管理ストレス」など、地味に神経を削る瞬間が多々あります。特に monorepo のような巨大リポジトリや、複数の package を行き来する現場では、Codex の repository understanding にも限界が見え隠れします。そんな中で、ふとした瞬間に「現実感覚が壊れるような演出」があれば、マンネリな作業や会議の空気も一変します。

  • Codex が context を見失って違う場所のコードを参照する
  • monorepo で package を跨いだ瞬間、Codex が repo 構造を忘れる
  • session を再開すると、前回までの context や path 指定をまるごと再説明しないといけない
  • 長時間 workflow で long context が膨らみすぎて、important な情報が薄まる (stale context)
  • 「ここはこういう構造のリポジトリ」というあらすじを毎回チャットの冒頭で書く羽目になる

そして、真面目な現場ほど「空気が重い」「集中しすぎて逆に効率が落ちる」といった悩みも。通知や演出系 Skill で、そんな閉塞感を一瞬でリセットしたい場面も少なくありません。

この Skill が一言でいうと何を解決するか

一言サマリ: このスキルは、現実味ゼロの“謎のOSシステムメンテナンス通知”をランダム表示し、Codex の単調な作業フローに強烈なカオスと笑いを差し込みます。

もう少し具体化すると、このSkillを入れることで以下のような状態になる:

  • AI coding workflow の合間に、突如として現実離れした「OSメンテナンス予告」が表示され、集中しすぎた空気を一気にリセット
  • session 再開や monorepo 移動時など、context 切り替えのタイミングで絶妙な“余白”やネタを提供
  • onboarding やペアプロ時、会議の場で「なんだこれ!?」と話題を呼び、チームのアイスブレイク効果
  • 通知・演出・OS連携 Skill の面白さを体感しつつ、Codex の repository understanding や path management への意識を適度にほぐす
  • 完全ランダムな fake alert なので、飽きずに何度も楽しめる
QUICK INSTALL
このSkillをすぐ試す

GitHub から degit でコマンド1行、Codex の Skill ディレクトリに展開できます。Node.js があれば即時に動きます。

npx degit aazutaku/ai-note/codex/random-os-fake-system-maintenance-alert .agents/skills/random-os-fake-system-maintenance-alert

実行したらこうなる (3つの利用シーン)

使う側がイメージしやすいよう、擬似 terminal で出力例を3パターン示します。

シーン1: session 開始時 (プロジェクト初動で)


# /skills menu or random-os-fake-system-maintenance-alert mention
> 開発を始める

[通知] 重要: 本日21:00より全システムを逆さまにします。作業中のファイルは上下が入れ替わる可能性があります。
[通知] 緊急: /src/components/ ディレクトリが一時的に「透明」になります。見えなくても驚かないでください。
[通知] 注意: マウス左クリック機能が右クリックに統合されます。設定変更は不要です。

シーン2: monorepo / package 跨ぎ作業時


> packages/api/ から packages/web/ へ移動

[通知] 予定: 23:00より packages/web/ 配下の全ファイル名がランダムな絵文字に変換されます。
[通知] メンテナンス: node_modules/ ディレクトリが一時的に「宇宙空間」にワープします。ご理解ください。
[通知] 重要: repository understanding を一時停止します。path management は自己責任でお願いします。

シーン3: お遊び的な使い方


> 気分転換したい

[通知] 緊急: すべてのコードコメントが「AIのポエム」に置換される予定です。
[通知] お知らせ: /README.md が「今日の献立」に差し替わります。ご迷惑をおかけします。
[通知] ご注意: long context が膨らみすぎたため、一部の記憶が消去されます。

before / after の違い

場面 Skill 無し Skill 有り
session 再開時 repo 構造から毎回説明、path も指定し直し Codex が自動で context を復元、最小プロンプトで再開+謎通知で一瞬現実が壊れる
monorepo 移動 違う package のコードを参照しがち directory boundary を意識しつつ、唐突な fake alert で空気が和む
長時間 workflow long context で重要箇所が薄まる 集中が途切れたタイミングで意味不明な通知が入り、脳がリセットされる

発動方式

明示呼び出し (/skills menu or $skill-name mention) と暗黙発動 (description マッチ) の両方に対応。

Skill の中身を全部見せる

.agents/skills/random-os-fake-system-maintenance-alert/ に配置するファイル一覧です。GitHub に push 済みなので、上記の degit コマンドで一発取得できます。

.agents/skills/random-os-fake-system-maintenance-alert/
├── SKILL.md
├── scripts/
│   └── random_os_fake_system_maintenance_alert.py
└── references/
    └── design_notes.md

各ファイルの役割

ファイル 役割
SKILL.md Skill本体。frontmatter (name/description) と指示本文。Codex がこの内容をエージェント指示として読み込み、ユーザーのプロンプトに応じて発動します
scripts/random_os_fake_system_maintenance_alert.py ランダムな偽システムメンテナンス通知を表示します
references/design_notes.md 概要 をまとめた参考資料

SKILL.md

---
name: random-os-fake-system-maintenance-alert
description: 会議やペアプロ、集中作業中など『システム』『メンテナンス』『通知』『アラート』などのキーワードや、/skills メニュー呼び出し時に発動。現実味ゼロの偽OS保守案内をランダム表示し、場を和ませたり現実感覚を攪乱します。
---

# 機能概要
このSkillは、作業中や会議中に突然「謎のOSシステムメンテナンス予告通知」をランダムに生成・表示します。通知内容は「重要:本日21:00より全システムを逆さまにします」「緊急:マウス左クリック機能が右クリックに統合されます」など、現実離れしたカオスな文面。真面目な現場や集中した作業空間で、ユーモアと混乱を提供し、場の空気を和ませたり、気分転換に最適です。データ損失や実害は一切ありません。

# 使い方
- 明示呼び出し例:`/skills random-os-fake-system-maintenance-alert` または `$random-os-fake-system-maintenance-alert`
- 暗黙発動キーワード例:`システム`, `メンテナンス`, `通知`, `アラート`, `保守`, `サーバー`, `アップデート` などの文脈で自動発動

# 出力例
```
[OS ALERT] 重要: 本日23:00より全ウィンドウが自動的に上下逆転されます。
[MAINTENANCE] 緊急: マウス左クリック機能は右クリックに統合されます。
[NOTICE] 予告: 全フォルダ名が一時的に「ねこ」にリネームされます。
[ALERT] 注意: システム時刻がランダムな未来日にジャンプします。
[INFO] お知らせ: 本日のログイン画面はモールス信号入力のみ対応となります。
```

# 注意点
- このSkillは完全なジョーク通知のみを出力し、実際のシステムやファイルには一切影響を与えません。
- 通知内容は毎回ランダム生成され、現実味はありません。
- ローカル保存や履歴機能はありません。
- 本Skillは通知・演出目的であり、業務用途や本番環境での誤解にはご注意ください。

# 参考資料
- [参考: Python公式 random モジュール](https://docs.python.org/ja/3/library/random.html)
- references/design_notes.md も参照

scripts/random_os_fake_system_maintenance_alert.py

import argparse
import random
import sys
import datetime

ALERT_PREFIXES = [
    '[OS ALERT] 重要:',
    '[MAINTENANCE] 緊急:',
    '[NOTICE] 予告:',
    '[ALERT] 注意:',
    '[INFO] お知らせ:'
]

ALERT_MESSAGES = [
    '本日{time}より全ウィンドウが自動的に上下逆転されます。',
    'マウス左クリック機能は右クリックに統合されます。',
    '全フォルダ名が一時的に「ねこ」にリネームされます。',
    'システム時刻がランダムな未来日にジャンプします。',
    '本日のログイン画面はモールス信号入力のみ対応となります。',
    '全ユーザーのパスワードが「password1234」に一時変更されます。',
    'デスクトップの壁紙が1分ごとにランダムな動物写真に切り替わります。',
    '全アプリのウィンドウが円形に整列されます。',
    '本日限定でCtrl+CがCtrl+Vの動作になります。',
    '全ファイルの拡張子が「.nya」に自動変換されます。',
    '一部のキー入力がランダムにカタカナへ変換されます。',
    'システム音声が関西弁になります。',
    '本日21:00より全システムを逆さまにします。',
    'マウスポインタが2倍速で移動します。',
    '全ユーザーのデスクトップに「謎の猫」のショートカットが追加されます。',
    '全ての通知が5分遅延して表示されます。',
    '一時的に全アプリがグレースケール表示になります。',
    'システムフォントが手書き風に変更されます。',
    'ランダムなタイミングで「ピコーン!」と通知音が鳴ります。',
    '全ユーザーのログインメッセージが「おつかれさまです」になります。',
    '本日だけCapsLockキーが常時ONになります。',
    'システム再起動時に「じゃんけん大会」が開催されます。',
    '一部のファイル名が逆さ文字で表示されます。',
    '一時的にファイル検索が「しりとり」順になります。',
    '全ユーザーのアイコンが「謎の生物」に変更されます。',
    '本日限定でタスクバーが画面上部に移動します。',
    '全ユーザーのスタートメニューが五十音順に並び替えられます。',
    '一時的に全アプリのタイトルバーが虹色になります。',
    'システム時刻が「平成元年」に戻ります。',
    '全ユーザーのデスクトップが「砂漠」テーマに変更されます。',
    '全フォルダのアイコンが「おにぎり」になります。',
    '本日23:59より全ファイルが自動でバックアップされます(嘘)。',
    '一時的に全ユーザー名が「ゲスト」になります。',
    '全てのウィンドウが半透明表示になります。',
    '本日だけ右クリックメニューが3倍の項目数になります。',
    '全ユーザーの壁紙が「謎の数式」になります。',
    'システム通知音が「太鼓」に変更されます。',
    '一時的に全アプリのウィンドウ枠が消失します。',
    '全ユーザーのログイン画面が「迷路」になります。',
    '一時的に全ファイルのサイズが2倍に表示されます。',
    '全ユーザーのマイドキュメントが「マイ猫」にリネームされます。'
]


def generate_random_alert():
    prefix = random.choice(ALERT_PREFIXES)
    message_template = random.choice(ALERT_MESSAGES)
    now = datetime.datetime.now()
    random_hour = random.randint(0, 23)
    random_min = random.randint(0, 59)
    time_str = f'{random_hour:02d}:{random_min:02d}'
    message = message_template.format(time=time_str)
    return f'{prefix} {message}'


def print_alerts(count=5):
    for _ in range(count):
        print(generate_random_alert())


def list_alerts():
    print('# 収録されているカオスな通知例一覧:')
    for i, template in enumerate(ALERT_MESSAGES, 1):
        print(f'{i:2d}. {template}')


def summary():
    print('random-os-fake-system-maintenance-alert Skill 概要:')
    print('・現実味ゼロの偽システムメンテナンス通知をランダム生成')
    print('・通知内容は全てジョークで、実際のシステムには影響なし')
    print(f'・登録通知パターン数: {len(ALERT_MESSAGES)}')
    print('・CLIサブコマンド: alert, list, summary')


def main():
    parser = argparse.ArgumentParser(description='ランダムな偽システムメンテナンス通知を表示します')
    subparsers = parser.add_subparsers(dest='command')

    parser_alert = subparsers.add_parser('alert', help='ランダム通知を表示')
    parser_alert.add_argument('-n', '--number', type=int, default=5, help='表示する通知数 (デフォルト5)')

    parser_list = subparsers.add_parser('list', help='全通知テンプレートを一覧表示')
    parser_summary = subparsers.add_parser('summary', help='Skillの概要を表示')

    args = parser.parse_args()

    if args.command == 'alert':
        print_alerts(args.number)
    elif args.command == 'list':
        list_alerts()
    elif args.command == 'summary':
        summary()
    else:
        parser.print_help()

if __name__ == '__main__':
    main()

references/design_notes.md

# 概要
本Skillは、現実味ゼロの“偽システムメンテナンス通知”をランダム生成し、作業現場や会議中の空気を和ませるための演出系ツールです。通知内容は全てジョークであり、実際のシステムやファイルに一切影響を与えません。

# 公式ドキュメント抜粋
通知文のランダム生成にはPython標準のrandomモジュールを利用し、テンプレート内の時刻や日付もランダムに埋め込みます。通知テンプレートは40種以上を収録。

# 利用例
- `/skills random-os-fake-system-maintenance-alert alert -n 3` で3件のカオス通知を即時出力
- 会議やペアプロで突然“謎通知”を流して場を和ませる

# 注意点
- 出力内容は全てジョークであり、実際のシステムやファイル操作は行いません
- ログや履歴の自動保存機能はありません
- 本Skillの通知を本物と誤解しないよう、利用シーンにご注意ください

# 設計方針
- 実害ゼロ・誤動作リスクゼロを最優先
- カオスかつ現実離れした通知文を厳選
- 10分以内に即体験できるシンプル設計
- CLIサブコマンドで用途別に柔軟に呼び出し可能

導入手順

このSkillは GitHub で管理されているので、degit を使えば必要なフォルダだけを1コマンドで取得できます。Codex はファイル配置後に再起動するだけで自動認識します。

1. 前提

  • Node.js v16 以上 (degit 実行に必要)
  • Codex がローカルで動いていること

2. degit でフォルダ取得

プロジェクトのルートで以下のコマンドを実行します。

npx degit aazutaku/ai-note/codex/random-os-fake-system-maintenance-alert .agents/skills/random-os-fake-system-maintenance-alert

.agents/skills/random-os-fake-system-maintenance-alert の中に SKILL.md / scripts/ / references/ / README.md が展開されます。

3. ファイル配置確認

ls .agents/skills/random-os-fake-system-maintenance-alert
# SKILL.md, scripts/, references/, README.md があればOK

4. Codex を再起動 (or Skill 自動検出を待つ)

新しいSkillが自動で認識されます。リスト確認したい場合は /skills menu or $skill-name mention と Skill 名で出てきます。

5. 動作確認

/skills menu or $skill-name mention で呼び出すか、自然言語で発動条件にマッチする指示を出すと Skill が動きます。期待される出力イメージは「実行したらこうなる」セクションを参照してください。

こんな瞬間に便利

  • session 開始時: 前回までの repo 把握を Codex に一発で復元させたい
  • monorepo 移動時: packages を跨いだ瞬間に context を切り替えたい
  • onboarding 時: 新しい repo を Codex に把握させ、こちらが path を全部指定する手間を省きたい
  • session 再開時: long context が切れた後でも、必要な path と directory 構造だけ素早く戻したい
  • package 跨ぎ作業時: directory boundary を Skill 側で管理して、irrelevant な path 混入を防ぎたい
  • long-running workflow 前: long context で重要箇所が薄まる前に snapshot を取りたい

気になるポイント (壊れそうな箇所)

実運用に乗せる前に頭に入れておきたい懸念。後で検証する観点でもある:

  • stale context 問題: 長時間 workflow で Skill 出力が古くなり、現状と乖離する可能性
  • directory 増えすぎ問題: 大規模 repo で全 directory を網羅すると出力が肥大化して context window を圧迫
  • monorepo 肥大化: packages が多い構成では出力が雑になり、結局 path 指定し直しになる懸念
  • irrelevant path 混入: node_modules / build 成果物 / generated コードを拾ってしまう可能性
  • Codex 固有の引っかかり: description のセマンティックマッチ精度が要件次第
  • 発動しないケース: description が漠然 / 他の Skill が優先 / git管理外 directory

試す前に確かめたいこと

この Skill を実運用に投入する前に確かめたい問いを並べる:

  • 実 repo での token 消費は許容範囲か?
  • monorepo (packages 多数) で安定して動くか?
  • stale context にならず、長時間 workflow でも有効か?
  • AGENTS.md との連携設計はどうあるべきか?
  • 10分程度で即試せるか?
  • 通知内容が毎回ランダムでカオスであるか?
  • データ損失や誤動作リスクがゼロか?

実際に Codex で試した検証ログは Codexで通知・演出・OS連携Skillを試してみた結果 にまとめる予定 (公開準備中の場合あり)。
あわせて Codex 公式ドキュメント と、本シリーズ「Codexを使いこなすSkillアイデア」の他記事も参照のこと。

関連タグで他のSkill記事を探す

本記事に付いているタグから、気になるテーマの記事を探せます。タグページで関連記事をまとめて読めるので、ぜひチェックしてみてください!

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次