By cryptolens
Devolens (formerly Cryptolens) licensing skills: .NET, Java, and Python SDK guidance plus shared rules and outcome routers for license-key verification, offline caching, floating licenses, verified trials, feature gates, subscriptions, key generation, and payment automation.
Work on the Cryptolens .NET SDK and .NET-specific software licensing integrations. Use when Codex needs to inspect, modify, review, test, or explain the `Cryptolens/cryptolens-dotnet` repository, especially license key verification, offline license verification, cached license files, Web API 3 activation, floating licenses, trial licenses, machine binding, node-locking, user-account authentication, NuGet packaging, .NET Framework versus .NET Standard behavior, or troubleshooting proxy, TLS, Unity, Mono, or Windows-only SDK issues.
Work on the Cryptolens Java SDK and Java-specific software licensing integrations. Use when Codex needs to inspect, modify, review, test, or explain the `Cryptolens/cryptolens-java` repository, especially license key verification, key activation, get-key flows, offline license verification, offline license strings, floating licenses, trial licenses, machine binding, node-locking, user-verification integrations, license-server routing, data objects, analytics events, Maven packaging, or migration away from deprecated `io.cryptolens.legacy.*` classes.
Work on the Cryptolens Python SDK and Python-specific software licensing integrations. Use when Codex needs to inspect, modify, review, test, or explain the `Cryptolens/cryptolens-python` repository, especially license key verification, key activation, offline license verification, offline license files, floating licenses, trial licenses, machine binding, node-locking, Python 2 compatibility, packaging, examples, or troubleshooting Python activation, signature, proxy, or SSL issues.
Shared cross-language guidance for Cryptolens software licensing SDKs, direct Web API 3 HTTP integrations, and unsupported-language fallbacks. Use when Codex works on any Cryptolens SDK or app integration and needs language-agnostic licensing rules, especially license key verification best practices, offline license verification with cached signed license files or strings, floating licenses, trial licenses, activation semantics, node-locking, machine-binding assumptions, or behavior that should stay consistent across Python, .NET, Java, Node.js, direct HTTP clients, and future SDKs.
Help with Devolens/Cryptolens feature-gated licensing, feature flags, product editions, feature templates, HasFeature checks, data-object-backed feature hierarchies, AddFeature upgrades, and entitlement review across .NET, Python, Java, Node.js, direct Web API integrations, and related stacks.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
This repository is a bundle of Devolens (formerly Cryptolens) skills intended to be used together, packaged for Claude Code and Codex plugin marketplace installs.
The language-specific skills depend on cryptolens-sdk-common for shared licensing rules, cross-language invariants, and doc-backed guidance that should stay aligned across SDKs. The current layout is bundle-first rather than individually packaged by default, so the ../cryptolens-sdk-common/... links are intentional — all skills live as siblings inside skills/.
.claude-plugin/
marketplace.json # Claude Code plugin marketplace manifest
plugin.json # Claude Code plugin manifest
.agents/
plugins/
marketplace.json # Codex marketplace manifest
install.sh # Codex marketplace bootstrap installer
plugins/
devolens/ # Codex plugin metadata
skills/ # canonical skill bundle, auto-discovered by Claude Code
scripts/ # installer helpers
Install the Devolens plugin from the GitHub marketplace with:
/plugin marketplace add Cryptolens/skills
/plugin install devolens@devolens
Run both commands inside Claude Code. The first registers this repository as a plugin marketplace (reading .claude-plugin/marketplace.json); the second installs the devolens plugin, which bundles all skills under skills/ (cryptolens-sdk-common, the language-specific skills, and the license-* aliases).
To install from a local clone instead of GitHub, point marketplace add at the repository path:
/plugin marketplace add /path/to/skills
/plugin install devolens@devolens
Restart Claude Code after installing so the new skills are discovered.
Review the installer source at:
https://github.com/Cryptolens/skills/blob/main/install.sh
Install the Devolens Codex marketplace with the raw script URL:
curl -fsSL https://raw.githubusercontent.com/Cryptolens/skills/main/install.sh | bash
The installer places a local marketplace at $CODEX_HOME/marketplaces/devolens, defaulting to ~/.codex/marketplaces/devolens when CODEX_HOME is not set. It registers the marketplace in $CODEX_HOME/config.toml so Codex can show Devolens as a marketplace source. On older setups where the config registry cannot be updated, it falls back to the legacy ~/.agents/plugins/marketplace.json path. Restart Codex, open Plugin Directory, choose Devolens, then install Devolens Licensing (devolens).
The Codex installer builds the plugin's skills/ directory from the canonical skills/ bundle during installation. Keep skills/ as the single source of truth.
Canonical implementation skills (under skills/):
cryptolens-sdk-common: shared/common skill with cross-language licensing rules and reference material.cryptolens-dotnet: .NET-specific guidance, repo mapping, and examples.cryptolens-java: Java-specific guidance, repo mapping, and examples.cryptolens-python: Python-specific guidance, repo mapping, and examples.Intent-based alias skills (under skills/):
license-offline: entrypoint for offline license verification, cached licenses, and air-gapped/manual activation flows.license-key-verification: entrypoint for general license key verification and activation flows.license-floating: entrypoint for floating-license behavior and overdraft questions.license-trials: entrypoint for verified trials and trial-key workflows.license-feature-gates: entrypoint for feature-gated licensing, feature templates, and entitlement checks.license-subscriptions: entrypoint for subscription expiry checks, renewals, cancellations, and grace periods.license-key-generation: entrypoint for backend CreateKey provisioning and license delivery flows.license-payment-automation: entrypoint for Stripe, n8n, Zapier, webhook, and external payment-provider automation.cryptolens-sdk-common is both shared infrastructure for the language-specific skills and a valid standalone skill when the task is language-agnostic, such as explaining product-wide licensing behavior or cross-SDK verification assumptions. The license-* skills are thin SEO/discoverability entrypoints that route into the canonical skills rather than replacing them.
Use the skills as one bundle unless you explicitly repackage them.
The intended dependency flow is:
npx claudepluginhub cryptolens/skills --plugin devolensReliable automation, in-depth debugging, and performance analysis in Chrome using Chrome DevTools and Puppeteer
Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review
Core skills library for Claude Code: TDD, debugging, collaboration patterns, and proven techniques
Harness-native ECC operator layer - 67 agents, 271 skills, 92 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses
Design fluency for frontend development. 1 skill with 23 commands (/impeccable polish, /impeccable audit, /impeccable critique, etc.) and curated anti-pattern detection.
Behavioral guidelines to reduce common LLM coding mistakes, derived from Andrej Karpathy's observations on LLM coding pitfalls