結城浩の作業ログ記録ツールesappについて by Claude

2025年6月24日

概要

esapp(esapp.private)は、結城浩さんが開発・使用している個人向け作業ログ管理システムです。日々の作業内容をリアルタイムで記録し、esa.ioというドキュメント共有プラットフォームに自動投稿することで、効率的な作業管理と情報共有を実現しています。

何をするものか

esappの主な目的は、作業中の思考や進捗を手軽に記録することです。ユーザーは以下のような使い方ができます:

  • リアルタイム作業ログ: 今何をしているか、何を考えているかをその場で記録
  • 時間追跡: 作業開始からの経過時間を自動計算し、効率的な時間管理をサポート
  • 定型作業の効率化: よく使用するフレーズや作業項目をワンクリックで入力
  • 統計分析: 日々の作業を自動分析し、どのカテゴリにどれくらい時間を使ったかを可視化
  • 画像の簡単共有: スクリーンショットなどをクリップボードから直接貼り付けて共有

このシステムの特徴は、作業の中断を最小限に抑えながら記録を残せることです。思いついたことを素早く入力し、後で振り返りや分析に活用できます。

システム構成

esappは以下の技術要素を組み合わせたハイブリッドなアーキテクチャを採用しています:

フロントエンド

  • Ruby ERB テンプレート: 動的なHTMLの生成
  • Bootstrap 5: レスポンシブなUI
  • Vanilla JavaScript: リアルタイムな操作性

バックエンド

  • Node.js + Express: APIサーバー
  • Ruby スクリプト群: データ処理と外部連携
  • HTTPS通信: セキュアな自己署名証明書

外部連携

  • esa.io API: 作業ログの投稿・取得
  • Gmail IMAP: メール経由での作業ログ取り込み

このように、Node.jsとRubyの両方を活用することで、それぞれの得意分野を生かした効率的なシステムを構築しています。

主要機能

1. 作業ログ記録機能

中核となる機能で、テキストエリアに入力した内容をesa.ioに自動投稿します。Command + Enterキーでの素早い投稿や、経過時間の自動挿入などにより、作業を中断することなく記録を残せます。

2. Quick Buttons

頻繁に使用する作業項目(「メルマガ執筆」「運動」「入浴」など)を絵文字付きのボタンとして配置し、ワンクリックで入力できます。マークダウンファイルで設定をカスタマイズできます。

3. Recent Buttons

最近使用したQuick Buttonsを自動的に表示するLRU(Last Recently Used)キャッシュ機能です。よく使う項目に素早くアクセスできるため、入力効率が向上します。

4. 画像アップロード

スクリーンショットなどをクリップボードから直接貼り付けると、自動的にesa.ioにアップロードされ、マークダウン形式で挿入されます。

5. Snippet Jumps

ChatGPTやClaude、Midjourney用のプロンプトテンプレートを管理し、外部サイトと連携して効率的にAIツールを活用できます。

6. 統計・分析機能

蓄積された作業ログを自動解析し、カテゴリ別の作業時間や傾向を視覚的に表示します。日々の振り返りや改善に活用できます。

7. OneText Memo

簡易的なメモ機能で、思いついたことを一時的に記録できます。1秒後に自動保存されるため、データの紛失を防げます。

システムの特徴

esappは個人使用に特化した設計となっており、以下のような配慮がなされています:

  • ローカル環境での動作: プライバシーを重視し、ローカルマシンで完結
  • セキュリティ: ヘッダーチェックによるアクセス制限
  • 拡張性: マークダウンファイルによる設定のカスタマイズ
  • 統合性: esa.ioとの深い連携による情報の一元管理

このシステムは、個人の生産性向上を目的とした実用的なツールとして、実際の日常業務で活用されています。技術的な興味深さと実用性を両立した、個人開発の好例といえるでしょう。

「結城浩の作業ログ」紹介

結城浩さんがesappを使って日々書いている「作業ログ」は以下で購読することができます。

(2025年6月24日)