Skip to content

Repository files navigation

X-Mate

X投稿支援CLIツール - 日々の気づきをX(Twitter)投稿用の文章に変換

概要

X-Mateは、日常の思考や気づきを入力として受け取り、LLM(大規模言語モデル)を使用してX(Twitter)投稿に適した文章を生成するCLIツールです。生成された文章は下書きとして保存され、過去の投稿から学習して個人の文体を反映させることができます。

主な機能

  • LLMを使用した入力テキストからX投稿用文章の生成(140文字制限対応)
  • 複数の投稿候補を提示
  • 下書きの保存と管理
  • 過去の投稿から文体を学習し、LLMのプロンプトに反映
  • 将来的にX APIを使用した自動投稿機能(予定)

使用方法

# 対話モードで投稿文を作成
x-mate new

# ファイルから入力を読み込んで投稿文を生成
x-mate generate --input memo.txt

# 過去の下書きを確認
x-mate drafts

# 投稿履歴を確認
x-mate history

セットアップ

1. 依存関係のインストール

npm install

2. 環境変数の設定

.env.exampleをコピーして.envファイルを作成し、必要な値を設定してください:

cp .env.example .env

.envファイルの内容例:

# LLM Provider Configuration
LLM_PROVIDER=openai

# OpenAI Configuration
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_MODEL=gpt-3.5-turbo

# Application Configuration
MAX_CANDIDATES=3
DEBUG=false

3. ビルド

npm run build

4. 実行

# 開発モード(TypeScriptから直接実行)
npm run dev new

# ビルド後のJavaScriptから実行
npm start new

# または直接実行
node dist/cli/index.js new

開発コマンド

# 開発モード(ファイル変更を監視して自動再実行)
npm run dev

# TypeScriptビルド
npm run build

# テスト実行
npm test

# テスト監視モード
npm run test:watch

# テストカバレッジ
npm run test:coverage

# リント
npm run lint

# 型チェック
npm run typecheck

開発状況

MVP完成状況:

  • ✅ プロジェクト初期化とTypeScript環境構築
  • ✅ 文字数カウント機能(140文字制限チェック)
  • ✅ LLMプロバイダー統合(OpenAI API)
  • ✅ CLIインターフェース(x-mate newコマンド)
  • ✅ テストスイート(Jest、カバレッジ80%以上)

今後の予定:

  • データベース統合(SQLite)
  • 投稿履歴保存機能
  • 文体学習機能
  • X API統合

ライセンス

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages