DASHタスク管理システム:雑に投げたタスクを自動振り分け
DASHタスク管理システム:雑に投げたタスクを自動振り分け
コンセプト
「これやらな」「あれ忘れてた」
タスク管理って、入力が面倒ですよね。アプリを開いて、タイトル入力して、期限設定して、カテゴリ選んで…そんな手間をかけてると、結局メモ帳に書いて終わり。
そこで、雑に投げたタスクを自動で振り分けるシステム「DASH(Daily Action System by Hero)」を作りました。
主な機能
1. 自然言語でタスク登録
「明日までにA社の資料作成」→ 自動で:
– タイトル: A社の資料作成
– 期限: 明日
– アカウント: クロスリンク(キーワードから判定)
– Googleカレンダーにも自動登録
2. アカウント自動判定
キーワードから自動で振り分け:
- 「A社」「SEO」「ブログ」 → クロスリンク
- 「体験会」「シフト」「名古屋」 → プログラミングスクール
3. モーニングブリーフィング
毎朝7:30に今日のタスクを自動配信:
☀️ おはよう!今日のブリーフィング
📅 今日の予定(2件)
09:30 - 新ラーニング朝会
14:00 - A社打ち合わせ
📝 今日のタスク(5件)
- A社の資料作成(60分 / クロスリンク)
- シフト調整(30分 / スクール)
...
合計推定時間: 3時間
4. ナイトブリーフィング
毎晩22:00に今日の振り返り:
🌙 お疲れ様!今日の振り返り
✅ 完了したタスク(3件)
- A社の資料作成
- シフト調整
- ブログ記事投稿
🔮 明日の予定(2件)
- 朝会
- 座席表作成
技術スタック
- Python 3.11 – バックエンド
- OpenClaw – AIアシスタント統合
- Google Calendar API – カレンダー連携
- Chatwork API – 通知
- JSON – タスクDB
実装のポイント
タスクDB
シンプルなJSON形式:
{
"version": "1.0.0",
"tasks": [
{
"id": "task-20260320-001",
"title": "A社の資料作成",
"account": "crosslink",
"priority": "high",
"status": "todo",
"due_date": "2026-03-21",
"estimated_minutes": 60,
"subtasks": [
{"title": "データ収集", "done": false},
{"title": "資料作成", "done": false}
],
"created_at": "2026-03-20T10:00:00+09:00"
}
]
}
自動振り分けロジック
def determine_account_from_task(text: str) -> str:
crosslink_kw = ['a社', 'seo', 'ブログ', 'ラーニング']
school_kw = ['体験会', 'シフト', '座席表', 'ココグラム']
if any(kw in text.lower() for kw in crosslink_kw):
return 'crosslink'
elif any(kw in text.lower() for kw in school_kw):
return 'programming_school'
else:
return 'crosslink' # デフォルト
成果
✅ タスク入力が超楽に
→ 雑に投げるだけ
✅ 見逃しゼロ
→ 朝晩のブリーフィングで確認
✅ 複数アカウント統合
→ 切り替え不要
開発期間: 1週間
コード行数: 約1,000行