Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Reason given by maintainers: Project renamed to cc-steer — install cc-steer instead (https://pypi.org/project/cc-steer/)

cc-pushback

cc-pushback banner

PyPI Python Docs License: PolyForm-Noncommercial-1.0.0

Mine your Claude Code transcripts for the moments you pushed back into a local database.

cc-pushback collects your corrections, interrupts, rejected plans, and code-review comments — with the surrounding conversational context — into a feedback database. That corpus is the raw material for learning your pushback style; this first release builds it. Your taste is mostly tacit (you notice a rule when it's violated), and that signal sits unused in transcript files; this turns it into a structured dataset.

Install

Run with uvx: uvx cc-pushback --help.

Quickstart

Scan your transcripts and accumulate the pushback into a local feedback database:

uvx cc-pushback scan
scanned 412 files, 1473 new rows

scan is incremental and idempotent: each transcript is parsed only when new or changed, every candidate is keyed by a content digest, and recording a file commits in one transaction, so an interrupted scan never leaves the database half-written. The database lives at ~/.cc-pushback/feedback.db by default (override with --db).

Commands

Command What it does
scan Scan transcripts for pushback, incrementally. --full re-mines every transcript; --transcripts DIR (repeatable) scans other directories.
stats Counts by source kind and the scanned-file count.
list Recent feedback, newest first. --source KIND (repeatable) and --limit N.

Run uvx cc-pushback COMMAND --help for the full flag list.

What gets collected

scan runs four detectors over each transcript, each tagged with a source kind: transcript messages (transcript_message, the pushback you typed mid-session), plan reviews (plan_review, rejected ExitPlanMode plans and plan-mode re-entries), interrupts and rejections (interrupt_rejection, permission denials and user interrupts), and review comments (review_comment, one row per inline code-review comment). Each row carries the conversational window around the feedback, captured at collection time because transcripts are ephemeral.

Mining from another machine

Transcripts live under ~/.claude/projects. Mirror a remote machine's history locally, then point scan at it — --transcripts is repeatable, so several mirrors fold into one scan:

rsync -az yasyf@yasyf:.claude/projects/ ~/.cc-pushback/mirrors/yasyf/
uvx cc-pushback scan --transcripts ~/.cc-pushback/mirrors/yasyf/

Docs

Read the docs for the full guide and API reference.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cc_pushback-0.6.0.tar.gz (57.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cc_pushback-0.6.0-py3-none-any.whl (68.8 kB view details)

Uploaded Python 3

File details

Details for the file cc_pushback-0.6.0.tar.gz.

File metadata

  • Download URL: cc_pushback-0.6.0.tar.gz
  • Upload date:
  • Size: 57.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cc_pushback-0.6.0.tar.gz
Algorithm Hash digest
SHA256 d546e5e39ee126cff5f71810c49712c4b3e9275ac8f0f55f37a9c39e8c67c65b
MD5 1439b843a66dcf1c1cfa8280b13c7add
BLAKE2b-256 e3531a2705c48f92cd21f92e650c6556d3de4077b4dd5b0f6e29fc7da6d7f1b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_pushback-0.6.0.tar.gz:

Publisher: release-pypi.yml on yasyf/cc-pushback

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cc_pushback-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: cc_pushback-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 68.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cc_pushback-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fd92a72eaec51aa24a92b7cd5496b98c8114e646f443a102b56cd6064bc52365
MD5 f225b1dc6da94cd46fcd8174d042dc3d
BLAKE2b-256 0b7cdc78e292a9b8239e96dbb3214b8dc4b0446247b39284563de5b260b17e6c

See more details on using hashes here.

Provenance

The following attestation bundles were made for cc_pushback-0.6.0-py3-none-any.whl:

Publisher: release-pypi.yml on yasyf/cc-pushback

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.8.1

2 files

0.8.0

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

This release

0.6.0 This release

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page