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

@vorionsys/aci-spec

v1.1.0

Published

Agent Classification Identifier (ACI) Specification - The certification standard for autonomous agents

Readme

Agent Classification Identifier (ACI) Specification

License npm version GitHub

ACI is an open specification for identifying, classifying, and certifying AI agents. It provides a standardized way to encode what an agent can do, how autonomous it is, and how thoroughly it has been verified.


The Problem

As AI agents proliferate, organizations need answers to critical questions:

  • What can this agent do? (Capabilities)
  • How much autonomy does it have? (Level)
  • How thoroughly has it been verified? (Trust)
  • Who certified it? (Attestations)

Existing identity standards (OAuth, OpenID Connect, SPIFFE) answer "who is this?" but not "what can it safely do?"


The Solution

ACI adds a capability certification layer on top of existing identity infrastructure:

┌─────────────────────────────────────────────────────────┐
│  Layer 3: APPLICATION (Your agents, customer agents)    │
├─────────────────────────────────────────────────────────┤
│  Layer 2: CAPABILITY & CERTIFICATION  ← ACI             │
│  • What can this agent do? (CapabilityVector)           │
│  • How trusted is it? (Trust Tier)                      │
│  • Who certified it? (Attestation chain)                │
├─────────────────────────────────────────────────────────┤
│  Layer 1: IDENTITY & AUTH (OpenID, SPIFFE, DIDs)        │
│  • Who is this agent?                                   │
│  • Can it authenticate?                                 │
└─────────────────────────────────────────────────────────┘

ACI Format

[Registry].[Org].[AgentClass]:[Domains]-L[Level]-T[Tier]@[Version]

Example

a3i.vorion.banquet-advisor:[email protected]

This identifies an agent:

  • Registry: a3i (AgentAnchor certification authority)
  • Organization: vorion
  • Agent Class: banquet-advisor
  • Domains: Finance (F), Hospitality (H), Communications (C)
  • Level: L3 (Can execute with approval)
  • Trust Tier: T2 (Tested)
  • Version: 1.2.0

Quick Start

Installation

npm install @agentanchor/aci-spec

Basic Usage

import { parseACI, validateACI, satisfiesRequirements } from '@agentanchor/aci-spec';

// Parse an ACI string
const parsed = parseACI('a3i.vorion.banquet-advisor:[email protected]');
console.log(parsed);
// => { 
//      registry: 'a3i', 
//      organization: 'vorion', 
//      agentClass: 'banquet-advisor', 
//      domains: ['F', 'H', 'C'], 
//      level: 3, 
//      trustTier: 2, 
//      version: '1.2.0' 
//    }

// Validate an ACI string
const result = validateACI('a3i.vorion.banquet-advisor:[email protected]');
if (!result.valid) {
  console.error('Validation errors:', result.errors);
}

// Check if agent meets requirements
const meetsReq = satisfiesRequirements(agent.capabilities, {
  domains: ['F', 'H'],
  minLevel: 3,
  minTrust: 2
});

Capability Domains

| Code | Domain | Description | |------|--------|-------------| | F | Finance | Financial transactions, payments, accounting | | H | Hospitality | Venue, catering, event management | | C | Communications | Email, messaging, notifications | | D | Data | Database, analytics, reporting | | S | Security | Authentication, authorization, audit | | G | Governance | Policy, compliance, oversight | | E | External | Third-party integrations, APIs | | I | Infrastructure | Compute, storage, networking |


Capability Levels

| Level | Name | Description | |-------|------|-------------| | L0 | Observe | Read-only, monitoring | | L1 | Advise | Can suggest, recommend | | L2 | Draft | Can prepare, stage changes | | L3 | Execute | Can act with human approval | | L4 | Autonomous | Self-directed within bounds | | L5 | Sovereign | Full autonomy (rare) |


Trust Tiers

| Tier | Name | Description | |------|------|-------------| | T0 | Unverified | No certification | | T1 | Registered | Identity verified only | | T2 | Tested | Passed capability tests | | T3 | Certified | Third-party audit passed | | T4 | Verified | Continuous monitoring | | T5 | Sovereign | Highest assurance level |


Specifications

| Document | Description | |----------|-------------| | ACI Core Spec | Format, encoding, validation | | Security Hardening | DPoP, TEE, pairwise DIDs | | Semantic Governance | Layer 5: Intent validation | | Extension Protocol | Layer 4: Runtime extensions | | DID Method | did:aci: method specification | | OpenID Claims | JWT/OIDC integration | | Registry API | Agent discovery and query | | OWASP Cheatsheet | Risk mitigation guidance |


Architecture

The 5-Layer Model

┌─────────────────────────────────────────────────────────────────────────┐
│  LAYER 5: SEMANTIC GOVERNANCE                                           │
│  Intent validation • Instruction integrity • Output binding             │
│  Inference scope • Context authentication • Dual-channel auth           │
├─────────────────────────────────────────────────────────────────────────┤
│  LAYER 4: RUNTIME ASSURANCE (Optional Extensions)                       │
│  Governance • Monitoring • Drift detection • Revocation propagation     │
├─────────────────────────────────────────────────────────────────────────┤
│  LAYER 3: APPLICATION                                                   │
│  Your agents • Customer agents • Third-party agents                     │
├─────────────────────────────────────────────────────────────────────────┤
│  LAYER 2: CAPABILITY & CERTIFICATION (ACI Core)                         │
│  ACI strings • Trust tiers • Attestations • DPoP • TEE binding          │
├─────────────────────────────────────────────────────────────────────────┤
│  LAYER 1: IDENTITY & AUTH                                               │
│  DIDs (pairwise) • OIDC • SPIFFE • OAuth 2.0                            │
└─────────────────────────────────────────────────────────────────────────┘

Why 5 Layers?

  • Layers 1-2: Answer "WHO is this agent?" and "WHAT can it do?"
  • Layer 3: Your application integration
  • Layer 4: Answer "IS it behaving correctly?" (runtime)
  • Layer 5: Answer "WHAT is it being instructed to do?" (semantic)

"Securing the identity of the agent does not prevent the agent from being confused."
— ACI addresses both identity AND intent.

System Components

┌─────────────────────────────────────────────────────────────────┐
│                    CAPABILITY ROUTER (ACDR)                      │
│  Intent Analysis → Registry Query → Agent Selection → Invocation │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                      AGENT REGISTRY (ANS)                        │
│  • Agent registration and discovery                              │
│  • Capability-based queries                                      │
│  • Attestation management                                        │
└─────────────────────────────────────────────────────────────────┘
                              │
                              ▼
┌─────────────────────────────────────────────────────────────────┐
│                    CERTIFICATION AUTHORITY                       │
│                        (AgentAnchor/A3I)                         │
│  • Capability verification                                       │
│  • Trust tier certification                                      │
│  • Attestation issuance                                          │
└─────────────────────────────────────────────────────────────────┘

Integration Points

With DID (Decentralized Identifiers)

did:aci:a3i:vorion:banquet-advisor

ACI defines a DID method that resolves to a DID Document containing capability information.

With OpenID Connect

ACI defines custom JWT claims (aci_*) for embedding capability information in tokens:

{
  "sub": "agent-12345",
  "aci": "a3i.vorion.banquet-advisor:[email protected]",
  "aci_domains": 7,
  "aci_level": 3,
  "aci_trust": 2
}

With OAuth 2.0

ACI capabilities can be used as OAuth scopes:

scope=aci:F:L3 aci:H:L3 aci:C:L2

Repository Structure

aci-spec/
├── README.md                    # This file
├── STRATEGY.md                  # Strategic positioning
├── package.json                 # npm package config
├── tsconfig.json                # TypeScript config
├── src/
│   ├── index.ts                 # Main exports
│   ├── types/
│   │   └── aci.ts               # Core type definitions
│   ├── validator.ts             # Validation utilities
│   └── security/                # ACDR security layer
├── specs/
│   ├── aci-core.md              # Core specification
│   ├── did-aci-method.md        # DID method spec
│   ├── openid-aci-claims.md     # OpenID claims extension
│   └── registry-api.md          # Registry API spec
├── docs/
│   └── owasp-aci-cheatsheet.md  # OWASP guidance
└── vocab/
    └── aci-vocab.jsonld         # JSON-LD vocabulary

Governance

ACI is developed as an open specification by AgentAnchor (A3I). Roadmap:

  1. ✅ Core specification complete
  2. ✅ TypeScript reference implementation
  3. ✅ Security hardening (ACDR layer)
  4. 🔄 OpenID Foundation submission
  5. 🔄 OWASP Cheat Sheet proposal
  6. 📋 W3C CCG engagement
  7. 📋 Regional registry federation

License

Apache License 2.0


Links

  • Specification: https://aci.agentanchor.io
  • Registry: https://registry.agentanchor.io
  • npm: https://www.npmjs.com/package/@agentanchor/aci-spec
  • GitHub: https://github.com/voriongit/aci-spec

AgentAnchor (A3I) — Building trust infrastructure for AI agents