Open28

claude codeをいい感じに使いたいので何を参考にしたかまとめるぞ

FruitRiinFruitRiin

なんかこれいいぞとかあったらコメントとかあるとうれし

FruitRiinFruitRiin

要件をまとめる→AI自身にテストさせて成否を確認できるようにする→うまくいくまで実行させる みたいなサイクルをさせるのがたぶんいいんだけど、それについてのまとめをどこで見たのか見失ったので誰か探してください

FruitRiinFruitRiin

要件のプロンプトをどういうふうに書いてるのがうまくいってるっぽいかの経験談を集めたいがどれを参考にしたやら忘れたので誰か探してください

FruitRiinFruitRiin

ローカルllmとクラウドllmのどっちがいいかについては、クラウドllmにお金かけたほうがすぐに始めてNot for meならすぐに捨てられていいと思います

FruitRiinFruitRiin

https://zenn.dev/lsk4f5/articles/ef878ed541cd82
tailscale と termius でiphoneからmacにssh

FruitRiinFruitRiin

macの claude で /loginしても iPhone から ssh したときログインが求められる
ログインを行おうししてもmac側でブラウザが開いてしまい困る

そんなときは claude setup-token で claude subscriptionのトークンが取得できる
これを 環境変数 CLAUDE_CODE_OAUTH_TOKEN として呼び出し可能にしておく

これをするとiPhoneからでもこのトークンが使われる

  • 環境変数に入れたものは /login で新しくならないので、 claudeのauth tokenを作り直したいときにこの環境変数にわたすものを直す必要がある(一敗
FruitRiinFruitRiin

サービスとかプランを何にするかは、最初は claude pro がええんでないかな
選考理由は とりあえずハズレではなさそうな必要十分が20USDに詰まっている というところ
無料で使える各種はそれを使い物にするためのノウハウを集めるのがめんどくさいと思うます
Rate Limitで物足りなくなってきたらclaude maxかなぁ……max課金しようかなぁ…悩む

FruitRiinFruitRiin

「型がおかしいから修正して」みたいなことを依頼するより「型がおかしいのでよさそうな対応をいくつか提案して」と依頼して選択するほうがいい感じになる

FruitRiinFruitRiin

Macではclaudeを使うときは find を gnu find準拠のコマンドで実行するので絶対に失敗する(find -n が全滅している)
gnu版findをインストールして alias find=gfind すると良さそう
grepも同様

FruitRiinFruitRiin

.claude/projects の配下にセッションの履歴が残っている

jsonl ファイルの構造を教えて下さい (2025/8/23)

.jsonlファイルの構造:

ファイル形式

  • JSONL (JSON Lines) - 1行に1つのJSONオブジェクト
  • プロジェクトごとにセッション単位で保存
  • ファイル名: {プロジェクトパス}/{セッションID}.jsonl

各行の基本構造

{
"parentUuid": "前のメッセージのUUID (最初はnull)",
"isSidechain": false,
"userType": "external",
"cwd": "/作業ディレクトリ",
"sessionId": "セッションID",
"version": "Claude Codeのバージョン",
"gitBranch": "Gitブランチ名",
"type": "user" | "assistant",
"message": { /* メッセージ内容 */ },
"uuid": "このメッセージのUUID",
"timestamp": "ISO8601形式のタイムスタンプ"
}

メッセージタイプ別の内容

ユーザーメッセージ

"message": {
"role": "user",
"content": "メッセージテキスト"
}

アシスタントメッセージ

"message": {
"id": "AnthropicのメッセージID",
"type": "message",
"role": "assistant",
"model": "claude-sonnet-4-20250514",
"content": [/* テキストやツール使用 */],
"stop_reason": null,
"stop_sequence": null,
"usage": {
"input_tokens": 4,
"cache_creation_input_tokens": 14785,
"cache_read_input_tokens": 0,
"output_tokens": 26,
"service_tier": "standard"
}
},
"requestId": "AnthropicのリクエストID"

追加フィールド

  • toolUseResult - ツール実行結果(WebFetchなど)
  • isMeta - メタメッセージ(コマンド実行時など)

この形式でセッション全体の会話履歴とトークン使用量が記録されています。

FruitRiinFruitRiin

claude が実行するbashをカスタマイズするときは .zshenv をカスタマイズする
.zshrcだとalias が有効にならないはず

alias find='gfind'
alias timeout="gtimeout"

など

ログインするとコメントできます