AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Kaggloop Publish

skill-qurore-kaggloop-kaggloop-publish · by qurore

Upgrade the public Kaggle notebook to a user-specified bundle with a matching Public-Score badge. Use whenever the user says to publish / upgrade / "notebook-ify" a bundle or a new best score, or asks to put a specific score on the public notebook. Handles slug resolution, content-match, badge, and vote preservation automatically.

No reviews yet
0 installs
15 views
0.0% view→install

Install

$ agentstack add skill-qurore-kaggloop-kaggloop-publish

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-qurore-kaggloop-kaggloop-publish)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Kaggloop Publish? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

kaggloop-publish — one-shot notebook version-up + matching Public-Score badge

Publish/upgrade the public forkable notebook so its Public Score badge == the notebook's content == the exact bundle the user specified, on the same voted kernel (votes preserved). This exists because doing it by hand kept failing in four ways; the script encodes the fixes.

When to invoke

The user points at a bundle/score and says publish it — e.g. "これをノートブック化 / 同じ要領 / アップグレード / このスコアをPublic Scoreに載せて". They specify which bundle (safe primary vs challenge). Never guess the bundle.

The one command

python .claude/skills/kaggloop-publish/publish.py \
  --bundle projects//submissions/_/submission.zip \
  --score auto            # or the bundle's already-known LB, e.g. 7221.08
  • --score auto submits the bundle first, waits for the LB, and uses that number (guarantees content==badge).
  • If you already submitted the bundle and know its LB, pass --score 7221.08 to skip the extra submission.
  • --dry builds + content-checks the notebook without pushing (use it to sanity-check first).
  • The script prints each step and ends with a [verify] line (votes preserved + badge==content) and the live URL. If [verify] fails it exits non-zero — do not report success.

Which bundle (the user chooses — do not assume)

  • Safe primary (submissions/_primary/submission.zip) — champions only, no divergence. The default "one-step-back safe" public bundle.
  • Challenge (submissions/_challenge/submission.zip) — primary + a validated divergence swap that HELD on the LB. Publish this only when the user asks for the higher/challenge score AND it has held on the hidden suite.

Confirm the bundle path scores what the user expects before publishing.

The four failure modes it prevents (why each step exists)

  1. Stale slug → 0-vote duplicate. The kernel re-slugs every time the score in its title changes (H1/title drives the slug). A hardcoded slug from last time is dead, so a push there creates a NEW 0-vote kernel. → The script resolves the CURRENT slug from the live kernels list, matching the stable branding marker (github.com/qurore/kaggloop) and taking the most-voted match.
  2. Wrong bundle (safe vs challenge). → The caller passes --bundle explicitly; nothing is inferred.
  3. Content ≠ badge (stale header).--score is the bundle's ACTUAL LB, the COSTS table is recomputed from the EMBEDDED bundle (every onnx scored via the project harness), and a post-build self-check asserts the only score string left in the markdown is the new one.
  4. Vote loss. → It pushes with metadata id = current slug, so Kaggle UPDATES the voted kernel (a title score-bump re-slugs it but keeps votes on the same kernel id). The [verify] step re-reads the vote count and fails loudly if it dropped.

Notes / gotchas (learned the hard way)

  • A title with the score (e.g. "NeuroGolf 7221.08") re-slugs the kernel to neurogolf-7221-08-… and 404s the old URL — votes are preserved but shared links change. That is the accepted "same manner" behavior. (To stop the churn permanently, publish with a score-free title and keep the score only in the body+badge — offer this if the user tires of URL changes.)
  • The badge is a code submission: -k -v -f submission.zip where -f is the kernel's OUTPUT filename (submission.zip), NOT a local path. Passing a local path → 400.
  • The CLI cannot delete kernels. A stray duplicate must be deleted by the user on the website (or re-pushed private).
  • Never badge via the raw API or MCP — keep it on the kaggle CLI so the submission is visible/governed.
  • After publishing, verify the visible result (the [verify] line): API success ≠ the badge being live. The notebook's score-sort position and the badge number are the real confirmation.

Relation to the loop

Publishing is a periodic side-quest off the main gap-closing loop, not a loop stage. The public bundle is normally the safe one-step-back; only publish a challenge/divergence bundle when the user asks and it has held on the LB. Run this whenever a new best is worth surfacing; then return to the loop.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.