{"adoption": {"forks": 104, "observed_at": "2026-08-28T04:06:57.678334+00:00", "stars": 2516}, "canonical_url": "https://ross.abutalabs.com/products/piknik", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Copy/paste anything over the network.", "domain": ["developer-tools", "security", "privacy"], "enriched": true, "function": ["cryptography", "security", "cli", "networking"], "health_score": 76, "homepage": null, "language": "Go", "license": "BSD-2-Clause", "license_family": "permissive", "maturity": "stable", "member_repos": ["jedisct1/piknik"], "name": "jedisct1/piknik", "platform": ["windows", "bsd", "cross-platform", "cli"], "pushed_at": "2026-04-13T11:32:06+00:00", "repo": "jedisct1/piknik", "stars": 2516, "tags": ["clipboard-sharing", "end-to-end-encryption", "staging-server", "file-transfer", "go", "command-line", "linux", "macos"], "topics": ["clipboard", "transit", "crypto", "copy", "paste", "security", "security-protocol", "staging-server"], "urls": [], "use_cases": ["copy a code snippet from one machine and paste it on another", "transfer files between hosts without ssh", "share clipboard content across NAT gateways and different networks", "pipe command output between remote machines", "move text between macos, linux, and windows hosts securely"], "what_it_is": "Piknik is a command-line tool that securely copies and pastes clipboard content between arbitrary hosts over the network, using end-to-end encryption and a staging server to traverse NAT and firewalls. It supports transferring text, URLs, and files via simple pkc/pkp commands.", "when_to_avoid": ["you only need local clipboard management", "you require a gui clipboard sync tool", "you cannot run or reach a staging server", "you need continuous bidirectional clipboard synchronization rather than on-demand copy/paste"], "when_to_choose": ["you need ad-hoc clipboard or file transfer between machines without ssh access", "hosts sit behind NAT or firewalls and can reach a shared staging server", "you want end-to-end encrypted transfer where the server cannot read content", "you work across multiple operating systems"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/piknik", "repo": "jedisct1/piknik", "role": "main", "score": 57}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.678334+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:26:09.734638+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2af8d5b2b5e504c5eb87aded1ab156cf9d229492cc15a3daddafe0b476059e1", "fetched_at": "2026-08-28T04:06:57.678334+00:00", "kind": "readme", "missing": false, "url": "https://github.com/jedisct1/piknik"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 77, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3696, "days_push": 142, "days_rel": 629, "gap_med": null, "n_releases_24m": 1}, "score": 57, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}