npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@uniqent/adapter-claude-code

v0.2.0

Published

Uniqent adapter that installs a .uniqent brain into Claude Code.

Readme

@uniqent/adapter-claude-code

Install a .uniqent agent brain into Claude Code.

Part of Uniqent — any brain, any agent: package an AI agent's whole brain into one open, signed .uniqent file and install it into whatever framework you run.

What it does

Translates a canonical .uniqent bundle into Claude Code's native layout:

  • skills → .claude/skills/
  • persona + policies + profile + memory facts → a <!-- uniqent:begin -->…<!-- uniqent:end --> managed section of AGENTS.md (your own content is preserved; an existing CLAUDE.md gets a managed @AGENTS.md import, since Claude Code ignores AGENTS.md when CLAUDE.md exists)
  • MCP servers → merged .mcp.json (your credentials are resolved locally — secrets never travel in the bundle; a file holding resolved credentials is written with mode 0600 and must not be committed)
  • channels / tasks / tools / runtime config / episodic memory / MCP tool allowlists that Claude Code can't hold are reported as lossiness, never silently dropped

Implements the @uniqent/adapter-sdk Adapter interface (detect / plan / apply / export).

Install

npm install @uniqent/adapter-claude-code

Most people don't need this directly. Use the CLI instead:

npx @uniqent/cli install my-brain.uniqent --target claude-code --root .

Usage (programmatic)

import { claudeCodeAdapter } from '@uniqent/adapter-claude-code';
import { readBundle } from '@uniqent/core';
import type { ResolvedCredentials } from '@uniqent/adapter-sdk';

// Load a signed .uniqent bundle
const bundle = await readBundle('./my-brain.uniqent');

// 1. Plan — inspect what will be written and what credentials are needed
const plan = await claudeCodeAdapter.plan(bundle, { root: '/path/to/project' });
console.log('Writes:', plan.writes);
console.log('Needs credentials:', plan.requiresCredentials);
console.log('Lossiness:', plan.lossiness);

// 2. Resolve credentials locally (never stored in the bundle)
const resolved: ResolvedCredentials = {
  'github-mcp_token': process.env.GITHUB_TOKEN ?? '',
};

// 3. Apply — write the native Claude Code layout into the target directory
const result = await claudeCodeAdapter.apply(bundle, plan, resolved, { root: '/path/to/project' });
console.log('Written:', result.written);
console.log('Notes:', result.notes);

Export (capture an existing Claude Code setup)

import { claudeCodeAdapter } from '@uniqent/adapter-claude-code';
import { packBundle } from '@uniqent/core';

// Reverse-translate a Claude Code project back into a portable .uniqent bundle.
// Credential values are scrubbed — only the requirement refs are captured.
const bundle = await claudeCodeAdapter.export({ root: '/path/to/project' });
await packBundle(bundle, './captured-brain.uniqent');

What gets written

| Bundle component | Claude Code target | Notes | | --------------------------- | ------------------------ | -------------------------------------------------------- | | Skills | .claude/skills/<name>/ | One directory per skill | | Persona + policies + memory | AGENTS.md | Memory folded in as flat text | | MCP servers | .mcp.json | Merged with any existing servers; creds injected locally | | Channels | — | Reported as lossiness (dropped) | | Tasks / automations | — | Reported as lossiness (dropped) | | Native tools | — | Reported as lossiness (dropped) |

apply is idempotent — running it twice produces the same result.

License

Apache-2.0. See the Uniqent monorepo.