본문으로 건너뛰기
cccskills
무료GitHub에 공개

collect

Collect this machine's local Claude Code conversation data with the asz collector. Resolves the local Claude data directory (honouring CLAUDE_CONFIG_DIR and XDG_CONFIG_HOME), builds the binary, lists what is discoverable, and lands everything into the storage root. Use when asked to collect, backfill, re-collect, or inspect local Claude Code sessions, or to check what the collector can see.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.9 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Collect local Claude Code data

Runs the claude-code-local adapter over this machine's own Claude Code files. It reads only what is already on disk — nothing needs to be enabled in Claude Code, and it works on history that predates the collector.

1. Resolve the source directory

The location is not fixed. Resolve in this order and report which one won:

if   [ -n "$CLAUDE_CONFIG_DIR" ];  then SRC="$CLAUDE_CONFIG_DIR/projects"
elif [ -n "$XDG_CONFIG_HOME" ];    then SRC="$XDG_CONFIG_HOME/claude/projects"
else                                    SRC="$HOME/.claude/projects"
fi
ls -d "$SRC" && du -sh "$SRC"

asz performs the same resolution internally, so normally you do not pass source_root at all. Set it only when collecting from a copy or a mounted corpus.

2. Build

make build          # -> ./bin/asz

3. See what is discoverable before collecting

./bin/asz sources

Reports one row per session with its stream, meta, journal and manifest counts, then a footer naming any session whose files span more than one source directory. Read it for two things:

  • filtered: N session(s) excluded by config — the default config excludes /private/tmp/** (Claude Code's own agent scratchpads). If a session you expect is missing, this is why.
  • sessions spanning several directories — normal. A child agent that ran in a different working directory is filed under that directory instead.

4. Collect

Default storage root is ./data, relative to the working directory.

./bin/asz collect -once          # single pass; the backfill path
./bin/asz collect                # watch mode: a pass now, then every 10 minutes

To land somewhere else, write a config and pass it:

# collect.yaml
storage:
  root: /tmp/asz-data
adapters:
  - name: claude-code-local
    enabled: true
    collector:
      mode: once
./bin/asz collect -config collect.yaml

Without -config, a command run from the repository root reads the asz.yaml there. Its values are the built-in defaults: storage root ./data, watch mode, a 10 minute interval. Pass a file like the one above when you want a single backfill pass into another directory.

5. Read the result line

sessions=61 sources=5831 landed=5831 records=364051 bytes=1.0GB
gone=0 conflicts=0 busy=0 pending=0 errors=0 (2m16s)
FieldMeaning
landedsources that produced new data this pass
gonesource deleted since last pass — normal, Claude Code prunes transcripts, and our landed copy outlives them
conflictsa source was rotated, truncated or rewritten behind the cursor; collection stopped for it
busysession skipped because another collector holds its lock
pendinga source still had data when the per-pass drain limit was reached

pending or errors above zero means the pass did not collect everything, and asz collect exits non-zero. A clean pass is pending=0 errors=0.

Re-running is cheap and safe: cursors make a steady-state pass ~1s over several thousand sources, and landing is idempotent by design.

What lands where

<root>/<session-id>/
    session.state                                   next_seq, liveness, last scan
    streams/main/        transcript.cursor · transcript-<ts>-<seq>.sd
    streams/<agent-id>/  transcript.cursor · transcript-… · meta.cursor · meta-…
    runs/<run-id>/       journal.cursor · journal-… · manifest.cursor · manifest-… · script.cursor · script-…
    index/               entries.bin · index.state
<root>/_conversations/<id>/rounds/r000001-<digest>.sf   written by asz parse

Landed files are Session Data (.sd), not copies of the source lines. See docs/en/formats/storage-root.md.

Landed files are write-once and read-only. Each is a header line plus one line per source record, with the source bytes preserved verbatim in payload.

Purging a session is rm -rf <root>/<session-id>/.

If something looks wrong

  • A session is missing — check the filtered line first, then asz sources.
  • conflicts is non-zero — the cursor for that source is now sticky. Inspect state in its cursor file; the source was rotated, truncated, or rewritten behind the position we had already consumed.
  • Nothing is discovered — confirm step 1 resolved to a directory that exists and contains per-project subdirectories.

Do not hand-edit anything under the storage root. Cursors and landed files are consistent only as written.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

apt

무료

Add released versions of Apache SkyWalking AI Sessionizer to its apt repository, static/apt in apache/skywalking-website, which the website serves at https://skywalking.apache.org/apt. Verifies the voted .deb packages, adds them to the index with apt-ftparchive, signs the index with the release manager's key, writes the .htaccess redirects, installs through them with apt, and opens a pull request to apache/skywalking-website. Use after a version is published.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

apache/skywalking-ai-sessionizer72026년 10월 19일 업데이트

homebrew

무료

Add released versions of Apache SkyWalking AI Sessionizer to its Homebrew tap, Formula/ on main in apache/skywalking-ai-sessionizer. Writes asz@VERSION from the voted packages, moves asz to the newest version, checks every formula with brew, and opens a pull request to main in this repository. Use after a version is published, or to add older released versions.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

apache/skywalking-ai-sessionizer72026년 10월 19일 업데이트

pypi

무료

Publish a released version of the Apache SkyWalking AI Sessionizer LangChain plugin, apache-skywalking-asz-langchain, to PyPI. Says what a release manager sets up before the first upload, downloads the voted source package, verifies it, builds the source distribution and the wheel from plugins/langchain inside it, checks and installs them, and uploads them with twine. Use after a version is published.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

apache/skywalking-ai-sessionizer72026년 10월 19일 업데이트

apache의 스킬 모두 보기

이 스킬의 문제 신고