
Coding Journal
- 1 repo stars
- Updated May 6, 2026
- sashadev-sky/claude-pluginz
Helps with ai & agent building tasks.
About
coding-journal is a Claude Code skill for ai & agent building. It helps developers move faster with AI-assisted coding.
- coding-journal
- AI & Agent Building
- AI-coding skill
Coding Journal by the numbers
- Data as of Jul 7, 2026 (Skillselion catalog sync)
/plugin marketplace add sashadev-sky/claude-pluginz/plugin install coding-journal@claude-pluginzAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| repo stars | ★ 1 |
|---|---|
| Last updated | May 6, 2026 |
| Repository | sashadev-sky/claude-pluginz ↗ |
What it does
Helps with ai & agent building tasks.
README.md
claude-pluginz
A personal marketplace of plugins for Claude Code, Codex CLI, Cursor, and Cursor CLI.
Setup
Add the marketplace, then install whatever plugin you need:
Claude
Marketplace:
/plugin marketplace add sashadev-sky/claude-pluginzPlugin:
/plugin install {plugin-name}@{marketplace-name}/plugin install coding-journal@claude-pluginz /plugin install project-continuity@claude-pluginz # or browse the plugin in `/plugin > Discover`
Codex CLI
Marketplace:
codex plugin marketplace add claude-pluginzPlugin: for plugins, can only install via a UI.
Cursor IDE
Install via the Cursor Marketplace (manual review required), or copy a plugin into ~/.cursor/plugins/local/<plugin>/ for local testing.
Cursor CLI (agent)
No plugin loader exists. Run ./scripts/sync-cursor-plugin-for-cli.sh to fan plugin components into the workspace .cursor/ discovery paths.
See Test locally → Cursor CLI.
Catalog
| Name | Skill | Description | Usage |
|---|---|---|---|
coding-journal |
claude-code-wrapped |
Interactive Spotify Wrapped-style terminal slideshow of your Claude Code usage stats | /coding-journal:claude-code-wrapped or $coding-journal:claude-code-wrapped |
project-continuity |
log-session-summary |
Append a structured summary of the current session to a SESSION_LOG.md file |
/project-continuity:log-session-summary or $project-continuity:log-session-summary |
Repo layout
claude-pluginz/
├── .agents/plugins/marketplace.json # Codex marketplace manifest
├── .claude-plugin/marketplace.json # Claude marketplace manifest
├── .cursor-plugin/marketplace.json # Cursor marketplace manifest
├── .claude/
│ ├── settings.json # repo-scoped Claude env (model defaults, etc.)
│ └── settings.local.json # repo-scoped enabledPlugins (gitignored locally)
├── .codex/config.toml # local Codex config
├── .cursor/ # generated by sync-cursor-plugin-for-cli.sh (gitignored)
│ ├── skills/ # flattened skills for Cursor CLI
│ └── .claude-plugins-cli-sync.manifest
├── .gitignore
├── .mcp.json # repo-scoped MCP server config (empty by default)
├── scripts/
│ └── sync-cursor-plugin-for-cli.sh # fan plugin → CLI discovery paths
├── plugins/
│ ├── coding-journal/
│ │ ├── .claude-plugin/plugin.json # Claude plugin manifest
│ │ ├── .codex-plugin/plugin.json # Codex plugin manifest
│ │ ├── .cursor-plugin/plugin.json # Cursor plugin manifest
│ │ ├── hooks/
│ │ │ ├── block-bare-invocation.sh # bash hook: route bare $coding-journal → wrapped
│ │ │ └── hooks.json
│ │ └── skills/claude-code-wrapped/
│ │ ├── agents/openai.yaml
│ │ ├── scripts/{__init__,launch,wrapped}.py
│ │ └── SKILL.md # skill definition + frontmatter
│ └── project-continuity/
│ ├── .claude-plugin/plugin.json
│ ├── .codex-plugin/plugin.json
│ ├── .cursor-plugin/plugin.json
│ ├── hooks/
│ │ ├── block-bare-invocation.sh # bash hook: route bare $project-continuity → log-session-summary
│ │ ├── block-model-skill.sh # bash hook: gate model-initiated Skill calls
│ │ └── hooks.json
│ └── skills/
│ ├── log-session-summary/
│ │ ├── agents/openai.yaml
│ │ ├── evals/evals.json # skill eval suite
│ │ └── SKILL.md
│ └── log-session-summary-workspace/ # eval output (iteration-1, iteration-2)
└── README.md
Required behavior
- Store plugins under
$REPO_ROOT/plugins/. - Use the same, normalized plugin name across:
marketplace.jsonplugin"name"- Outer folder name (
plugins/<name>/) plugin.json"name"(in each.<runtime>-plugin/subdirectory)
Codex
- Codex can read from
.claude-plugin/marketplace.jsonor its own.agents/plugins/marketplace.json. This repo uses the latter because it supportsinterface.displayName, which alters the way the plugin appears in the Codex CLI.
Cursor
- IDE: reads
.cursor-plugin/marketplace.jsonand per-plugin.cursor-plugin/plugin.json. Skills, rules, hooks, etc. are auto-discovered inside each plugin's directory. - CLI (
agent): does not use the plugin loader (nopluginsubcommand). It only sees skills/rules/MCPs at their direct discovery paths. See Cursor CLI below.
Hooks
1) project-continuity plugin
UserPromptSubmithook maps the exact bare$project-continuityplugin invocation to a one-shot$project-continuity:log-session-summaryskill call.PreToolUsehook replaces thelog-session-summaryskill'sdisable-model-invocation: truefrontmatter, which is not considered a valid value in the Agent Skills specification.
2) coding-journal plugin
UserPromptSubmithook blocks the bare$coding-journalplugin invocation and launches$coding-journal:claude-code-wrappedinstead.
Test locally
Requirements
Hook scripts shell out to a few host tools. Make sure the following are on PATH before running any plugin:
| Tool | Used by | Notes |
|---|---|---|
bash |
both plugins | invoked directly by hooks.json |
jq |
both plugins | parses the hook event JSON on stdin |
uv or python3 |
coding-journal |
block-bare-invocation.sh prefers uv run, falls back to python3 to launch the wrapped slideshow |
timeout or gtimeout or perl |
coding-journal |
any one is fine; used to cap launcher runtime at 30s |
Claude
Navigate to any project where you want to use the plugin, uninstall the marketplace version if installed, then start Claude Code with --plugin-dir pointing to the plugin root:
claude --plugin-dir ~/claude-plugins/plugins/coding-journal/
/coding-journal:claude-code-wrapped
claude --plugin-dir ~/claude-plugins/plugins/project-continuity/
/project-continuity:log-session-summary
Codex
Plugins must be installed via the Codex IDE UI. To re-point at a local checkout:
codex plugin marketplace remove claude-pluginz
codex plugin marketplace add ./
Cursor IDE
Copy the plugin into Cursor's local-plugin directory and reload the window. Symlinks are unreliable here (cursor/plugins#35) — use a real copy:
mkdir -p ~/.cursor/plugins/local
cp -R ~/claude-plugins/plugins/coding-journal ~/.cursor/plugins/local/coding-journal
# In Cursor: Cmd+Shift+P → "Developer: Reload Window"
Cursor CLI
agent has no plugin loader. It only discovers components at their direct paths:
| Component | CLI discovery path (workspace or ~) |
|---|---|
| Skills | .cursor/skills/<skill>/SKILL.md |
| Rules | .cursor/rules/*.mdc |
| MCP | .cursor/mcp.json |
Run the sync script to fan each plugin's skills/ (and any future rules/) into the workspace .cursor/:
./scripts/sync-cursor-plugin-for-cli.sh # all plugins
./scripts/sync-cursor-plugin-for-cli.sh coding-journal # one plugin
It is idempotent: a manifest at .cursor/.claude-plugins-cli-sync.manifest tracks every path the script created so re-runs cleanly remove stale entries before recopying. Hooks, commands, and mcp.json are flagged with warnings since CLI support is unverified or absent.
Validation
Validate marketplace JSON syntax:
claude plugin validate . # Claude uvx codex-plugin-scanner verify . # CodexValidate skill
SKILL.mdfrontmatter against the Agent Skills standard:npx -y skills-ref validate <path_to_skill>
Evals
The evals are testing the hooks worked as expected - ie. the skill project-continuity/log-session-summary could only be directly invoked by the user.
Prompt:
"Use the
skill-creatorskill to run the evals atlog-session-summary/evals/evals.jsonagainst the skill atlog-session-summary. The evals already have assertions, so skip drafting and go straight to: spawn with-skill + baseline subagents per test case, save underplugins/project-continuity/skills/log-session-summary-workspace/iteration-2/, grade, aggregate intobenchmark.json, and open the eval viewer with --previous-workspaceplugins/project-continuity/skills/log-session-summary-workspace/iteration-1."
Reply:
"Running evals for the
log-session-summaryskill, iteration 1 is complete and the viewer is open at http://localhost:3117. Review the results there and share feedback to proceed."
Resources
- Agent Skills Specification
- Claude Code Plugin Marketplace
- Codex Plugin Marketplace
- Cursor Plugins reference
- Cursor Skills discovery
TODO
- Update
coding-journalwrapped stats handling so stale~/.claude/stats-cache.jsondoes not produce outdated usage totals. Detect whenlastComputedDateis behind recent~/.claude/projects/**/*.jsonlactivity, then trigger the upstream stats refresh if available or recompute session/message/tool totals from transcripts as a fallback. Token totals may also be recoverable from JSONL usage blocks. - Switch
project-continuityto an eval system that better fits thelog-session-summaryuse case. - Submit to the Cursor Marketplace.
- Add Cursor-specific hook configs (
hooks/cursor.jsonwithpreToolUseevents) so the bare-invocation behavior carries over to Cursor IDE.