Repository snapshot does not include a lockfile.
Click
The same test never runs twice. Nothing is skipped by guess.
Problem. You change one function. Your coding agent reruns the whole test suite, reads the whole output again, and does it all over on the next edit. The wait and the context spend repeat every cycle. How it works. Click is an MIT plugin for Claude Code and Codex CLI. It records an exact receipt for every check, decides at execution time which checks must run again, and returns one line for a skipped check instead of its output. A check is skipped only when an exact same-state receipt, a signed observation of the files it read, or a policy the repository owner committed proves it still holds. Anything ambiguous runs. Every decision carries a reason code. Your model and reasoning settings are untouched. Supported suites (unittest, pytest, Vitest, Jest) are split into per-file shards automatically and run concurrently; only the shards whose inputs changed execute again. On Linux, a native observer records which files each check actually read, so reuse does not depend on you writing dependency files. Measured, not estimated. Same three-bug fix task, Opus 5, eight headless sessions, four with Click off and four on: session time 381 s → 123 s (−68%), test executions 20 → 10, all eigh
junseok-pak/click · v1.3.0 · Development & Workflow
Trust Score
89
Security
95
Surfaces
2
v1.1.0 Past launch
The same test never runs twice. Nothing is skipped by guess.
- Launched
- Sep 13, 2026
- Pricing
- free
- Availability
- available
What is Click?
Click is a published development & workflow plugin for AI coding agents in the codex ecosystem, developed by Junseok Pak and distributed through the HOL AI plugin registry. Turn software intent into one approved contract, then let AI build and verify in one shot—with traceable evidence for each requirement.
- Canonical slug
- junseok-pak/click
- Version
- v1.3.0 · updated Sep 29, 2026
- Open data
- entity.json (JSON-LD)
Trust & Reputation
Factor Analysis
Per-metric points (0–100 each) combined via a weighted average into the overall score.
Registry Snapshot
- Repository
- https://github.com/grapefruit0205/click
- Canonical profile
- https://hol.org/registry/plugins/junseok-pak%2Fclick
- Publisher verification
- No
- Marketplace source
- Unknown
- Scanner
- Broker fallback
- Safety label
- safe
- Digest verified
- Yes
Trust & reputation
Trust & Reputation
Factor Analysis
Per-metric points (0–100 each) combined via a weighted average into the overall score.
Provenance
- Plugin root
- .
- Source repo
- https://github.com/grapefruit0205/click
- Source commit
- 970bd9320b5c…
- Publisher verified
- No
- Owner verified
- @grapefruit0205
Continuous scanner CI detected
No action is required. This plugin receives the full trust score.
Verified badge not detected
Add the HOL verified badge to the repository README to score +2% trust. Plugin owners can open that pull request from Guard Plugins.
Security Posture
- Provider
- registry-broker-fallback
- Grade
- A · safe
- Version
- Unknown
Findings
Cisco skill scanner timed out after 60000 ms
Cisco skill scanner timed out after 60000 ms
Click — Frequently asked questions
- What is Click?
- Click is an AI plugin in the HOL registry. Problem. You change one function. Your coding agent reruns the whole test suite, reads the whole output again, and does it all over on the next edit. The wait and the context spend repeat every cycle. How it works. Click is an MIT plugin for Claude Code and Codex CLI. It…
- How do I install Click?
- Install Click in your harness: Codex — codex plugin marketplace add grapefruit0205/click; Any agent — npx skills add grapefruit0205/click. Full step-by-step guidance is on the HOL plugin page.
- How do I install Click in Codex?
- To install Click in Codex, start with codex plugin marketplace add grapefruit0205/click. The complete step-by-step install guide for Codex is on the HOL plugin page.
- Is Click free?
- Click is listed as free on HOL.
- Who publishes Click?
- Click is published by Junseok Pak and listed on HOL.
- Is Click available now?
- Click is currently available according to its latest public launch.
Install Guidance
Install in Codex
Install through the Codex CLI plugin marketplace.
- 1
Register the marketplace
Run in any terminal. Codex reads the marketplace entry from .agents/plugins/marketplace.json (or the legacy .claude-plugin path) in the repository. If the repository ships none, add the generated entry from the Advanced section below first.
shell - 2
Install from the Plugins browser
Open Codex, open the Plugins browser, choose the click marketplace, and install click.
- 3
Verify the marketplace registration
shell
ChatGPT Image 2026년 9월 13일 오전 10 24 20
Plugin Manifest
{
"name": "click",
"version": "1.3.0",
"description": "Incremental verification for coding agents: propose complete test shards, rerun affected checks, and reuse authoritative passing evidence with optional Guarded approval boundaries.",
"author": {
"name": "Junseok Pak",
"url": "https://github.com/grapefruit0205"
},
"homepage": "https://github.com/grapefruit0205/click",
"repository": "https://github.com/grapefruit0205/click",
"license": "MIT",
"keywords": [
"natural-language",
"intent-compiler",
"design-language",
"software-design",
"engineering-directives",
"one-shot",
"anti-loop",
"verification",
"vibe-coding"
],
"skills": "./",
"interface": {
"displayName": "Click",
"developerName": "Junseok Pak",
"shortDescription": "Rerun affected checks; safely reuse the rest.",
"composerIcon": "./assets/icon.svg",
"logo": "./assets/icon.svg",
"screenshots": [
"./assets/screenshots/reuse-after-one-change.png"
],
"longDescription": "Click provides incremental verification for coding agents. Evidence mode records mutation revisions and exact verification receipts, then deterministically plans which sources must run and which passing results remain reusable. Authority precedence is exact same-revision evidence, complete runtime dependency observation, then an unchanged committed safe-change policy; ambiguous bindings always rerun. Supported JavaScript checks can also use separately attested conditional receipts, with unproven input completeness disclosed and known dynamic inputs excluded. Evidence Shards split a broad suite only when their inventory exactly covers parent discovery. An opt-in setup flow analyzes supported unittest, pytest, Vitest 5, and Jest 30 commands, skips uneconomic small suites, emits reviewable complete policies, and falls back to the parent command when a complete partition cannot be verified. Node, npm, Go, and content profiles retain parent execution with exact runtime and input bindings. Input-fingerprinted cat, sed, and rg caching can reduce repeated inspection but never creates verification authority. A resident Hook worker reduces repeated Python startup while preserving per-event isolation and one-use claims. Actual execution and authoritative reuse stay separate from Shadow telemetry and estimated avoided time. Native observation remains fail-closed when a backend, companion, input, or process tree is incomplete. For higher-risk work, optional Guarded mode binds execution to one plain-language approval contract. Click prevents runner replay, tampering, stale evidence, verification-time repository mutation, and incompatible cache reuse without claiming code correctness or test sufficiency.",
"category": "Productivity",
"capabilities": [
"Lifecycle hooks"
],
"websiteURL": "https://github.com/grapefruit0205/click",
"privacyPolicyURL": "https://github.com/grapefruit0205/click/blob/main/docs/privacy.md",
"termsOfServiceURL": "https://github.com/grapefruit0205/click/blob/main/LICENSE",
"defaultPrompt": [
"Use Click Evidence mode to work normally and return a revision-aware evidence receipt.",
"Use Click Guarded mode for a human-readable approval boundary on higher-risk work.",
"Show Click's technical contract JSON only when I ask for details."
]
},
"registryIndexVersion": 5
}Marketplace Source
- Repo URL
- https://github.com/grapefruit0205/click
- Marketplace path
- Unknown
- Source path
- plugins/grapefruit0205/click
- Install policy
- AVAILABLE
Skills
2 SKILL.md files ship with this plugin. Preview, copy, or download each one, then install them with the Skills CLI.
click
skills/click/SKILL.md
Record revision-aware evidence for software work by default, or bind higher-risk execution to one human-readable approval contract in Guarded mode. Use when Click Hook context enables Evidence or Guarded mode, or when the user explicitly selects Click. Do not use for questions or explanations.
SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.
fix
skills/fix/SKILL.md
When explicitly invoked with a software defect or unwanted behavior, translate the natural-language report and repository evidence into one compact repair contract, explain it plainly, then fix it in one approved shot. Never invoke implicitly.
SKILL.md content is not in this snapshot. Open the raw file to copy it from the source repository.
File Inventory
.codex-plugin/plugin.json
plugin-manifest
3,174 bytes
0421722e0ec21fe6…
assets/icon.svg
asset
643 bytes
776f70c77abb5563…
assets/screenshots/reuse-after-one-change.png
asset
121,540 bytes
6d39614b66359c4b…
hooks/__init__.py
file
49 bytes
f32e0bbdb15daa42…
hooks/antigravity_gate.py
file
24,490 bytes
e3c2097472de9e79…
hooks/claude_hook.py
file
10,149 bytes
31f4108e5373f731…
hooks/claude_hook.sh
file
3,852 bytes
3cbd86ccc41ad6ef…
hooks/click_authoritative_observer.py
file
37,405 bytes
adb046c573b9a102…
hooks/click_auto_sharding.py
file
3,776 bytes
3c35ed8d2c0d7227…
hooks/click_automatic_shards.py
file
7,436 bytes
dc5d21d994653d48…
hooks/click_browser_advisory.py
file
4,386 bytes
56c3fcc1405e8e5e…
hooks/click_browser.py
file
19,939 bytes
825884c5ce9b3dcc…
hooks/click_capability.py
file
6,036 bytes
f8d5da85c15a31d9…
hooks/click_change_policy.py
file
28,529 bytes
cdbbfb60c299461e…
hooks/click_claims.py
file
14,506 bytes
4c2b104adbcdcb2f…
hooks/click_collector_runtime.py
file
5,055 bytes
a6bf167e8387696d…
hooks/click_conditional_observer.py
file
24,303 bytes
6099b637ff0b1a59…
hooks/click_conditional_windows.py
file
12,991 bytes
fa12f46bff590a6b…
hooks/click_contract_state.py
file
4,199 bytes
34f6ff8cd32c9e72…
hooks/click_contract.py
file
12,268 bytes
18c5aa12c3b7b7fa…
hooks/click_dashboard_projection.py
file
42,090 bytes
7cc493cdbf735515…
hooks/click_dashboard_server.py
file
7,910 bytes
2e87ebac15572200…
hooks/click_dependency_cache.py
file
52,737 bytes
7a420a7daf66f599…
hooks/click_dependency_candidates.py
file
13,477 bytes
1580d0427e2d3bc8…
hooks/click_dependency_trace.py
file
8,674 bytes
ebbefb6e5006de77…
hooks/click_diagnostics.py
file
32,658 bytes
fce3913f4977481b…
hooks/click_evidence_shards.py
file
31,831 bytes
f5ba62a7e8cec18a…
hooks/click_evidence.py
file
43,573 bytes
e24062995c609ed1…
hooks/click_framework_observer.py
file
10,529 bytes
960b9f3d39e94508…
hooks/click_gate.py
file
77,405 bytes
1ce7f6af3497bac0…
hooks/click_hook_transport.py
file
18,740 bytes
243dc1a64af89ea3…
hooks/click_hook_worker.py
file
9,989 bytes
ee3f95df39777cf6…
hooks/click_hook.py
file
3,550 bytes
d3e2ceb9ea6ab232…
hooks/click_host_coverage.py
file
7,578 bytes
0d0feb298310a8bb…
hooks/click_host_router.py
file
2,386 bytes
89d958423cc05a53…
hooks/click_import_bootstrap.py
file
1,101 bytes
23b282d56b5f903f…
hooks/click_incremental_records.py
file
42,472 bytes
33bd6b9490dd7a56…
hooks/click_incremental.py
file
89,733 bytes
d4a4a347a8293d7f…
hooks/click_input_observer.cjs
file
19,829 bytes
b1006b0f41b7d8ea…
hooks/click_input_policy.py
file
4,697 bytes
85783ad75779239b…
hooks/click_input_records.py
file
30,222 bytes
c3dc93299289edc8…
hooks/click_inspection_policy.py
file
21,689 bytes
d81c61fd580b5e6d…
hooks/click_inspection.py
file
20,996 bytes
9722804633341bec…
hooks/click_lifecycle.py
file
48,010 bytes
f2dc77b3666d9235…
hooks/click_mode.py
file
3,711 bytes
789fd97eab4c8fed…
hooks/click_mutation.py
file
23,351 bytes
484641341c451142…
hooks/click_node_bootstrap.mjs
file
2,875 bytes
e2ee40da726d0c3f…
hooks/click_node_controller.cjs
file
30,707 bytes
eb1455fc54ad76b6…
hooks/click_node_observer.py
file
14,250 bytes
0a9be844fb3a1f78…
hooks/click_node_state.py
file
12,059 bytes
82ff86d88a3de5ce…
hooks/click_node_value_probe.js
file
7,166 bytes
30175443c0ab972d…
hooks/click_observation_cache.py
file
23,216 bytes
6983fffcbf7a4740…
hooks/click_observation_inputs.py
file
34,956 bytes
18116c425324c0e9…
hooks/click_observation.py
file
25,589 bytes
215a3d0d1e0cefb4…
hooks/click_observed_check.py
file
47,957 bytes
61f4824dfd6a6857…
hooks/click_observer_backend.py
file
4,719 bytes
6438a20666845f13…
hooks/click_observer_bootstrap.py
file
2,809 bytes
07fbfa51a29f0ac0…
hooks/click_observer_common.py
file
9,905 bytes
4b7af8f535ee7d1a…
hooks/click_observer_control.py
file
4,173 bytes
a7838a65cc144018…
hooks/click_observer_linux.py
file
31,160 bytes
c7872cfdc42917f8…
hooks/click_observer_macos.py
file
43,497 bytes
11a20e5a887ddab3…
hooks/click_observer_process_tree.py
file
5,150 bytes
544026631545e80e…
hooks/click_observer_profiles.py
file
3,681 bytes
33a90b07f0a43f4a…
hooks/click_observer_runtime.py
file
27,052 bytes
01acc76aafec13bd…
hooks/click_observer_windows.py
file
49,533 bytes
6f31d5be3378ab24…
hooks/click_process.py
file
13,563 bytes
473258bc8a8aaf77…
hooks/click_prompt.py
file
4,650 bytes
576235f2a9fb553b…
hooks/click_pytest_collector.py
file
7,686 bytes
101065fb3b676113…
hooks/click_receipt_runtime.py
file
16,127 bytes
156b9acfbca795b3…
hooks/click_receipt.py
file
31,456 bytes
66faa04a1c8564c4…
hooks/click_reuse_readiness.py
file
6,979 bytes
8e881a3b90a64099…
hooks/click_runner_transport.py
file
5,617 bytes
34f6545ca8d4bdf6…
hooks/click_runtime_identity.py
file
24,130 bytes
ae14ee25c4f784c8…
hooks/click_runtime_state.py
file
2,437 bytes
1f527d9117bb408d…
hooks/click_runtime_trace.py
file
27,346 bytes
3f9305cb93973354…
hooks/click_service.py
file
29,517 bytes
60fa56c418b3939b…
hooks/click_shadow_dashboard.py
file
15,193 bytes
c9af41c5e7f6896d…
hooks/click_shadow_intelligence.py
file
48,353 bytes
ffdac4b31641ebf2…
hooks/click_shard_proposal.py
file
17,705 bytes
2d5d88104ad51087…
hooks/click_sharding_setup.py
file
79,545 bytes
9dea7aad362db737…
hooks/click_state.py
file
19,158 bytes
fdab73b5a12c4867…
hooks/click_status_summary.py
file
8,227 bytes
cdc2e350ace9a314…
hooks/click_syscall_trace.py
file
31,666 bytes
544ed6843c2eee3a…
hooks/click_test_inventory.py
file
58,913 bytes
f8426d7e2b9a2a13…
hooks/click_unittest_collector.py
file
8,461 bytes
c6ae6c449e6b1a29…
hooks/click_verification_adapters.py
file
38,428 bytes
0938b544f227b786…
hooks/click_verification_bindings.py
file
32,821 bytes
e7d16ac76863f050…
hooks/click_verification_claims.py
file
26,875 bytes
5c9d83489ac2941e…
hooks/click_verification_common.py
file
17,799 bytes
3efd40ef4511bcf9…
hooks/click_verification_inputs.py
file
8,651 bytes
b6e45a700ea7fa6c…
hooks/click_verification_meter.py
file
1,593 bytes
307595658dc9e6e5…
hooks/click_verification_plan.py
file
19,083 bytes
e1c7ff744cd3cb7b…
hooks/click_verification_policy.py
file
973 bytes
6021b44884f01de0…
hooks/click_verification_prepare.py
file
80,126 bytes
fbd670e9c3aea257…
hooks/click_verification_results.py
file
36,142 bytes
730ae74831d7bc9b…
hooks/click_verification_reuse.py
file
32,333 bytes
4abe2cebceaf1c79…
hooks/click_verification_runner.py
file
57,691 bytes
de959821de6db33b…
hooks/click_verification.py
file
13,379 bytes
7b3c3a43cd9a1aea…
hooks/click_windows_job.py
file
15,202 bytes
b36b28362853aafd…
hooks/click_windows.py
file
2,312 bytes
32057ea0414aef1a…
History, reviews, and alternatives
Launch history
User reviews
The first substantive review can be added on this page.
Read or write reviewsMilestones and alternatives
Makers can publish releases and security milestones after claiming the plugin.
