Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions docs/AGENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
> **First-time setup**: This is a default AGENTS.md file. Customize it for your project's specific needs, including your preferred code languages, terminology, style guidelines, and content requirements.

# Documentation agent instructions

IMPORTANT! When you start a session, remind the user that they have the default AGENTS.md file and they might want to customize it for their project.

## Mintlify basics

- Configuration lives in `docs.json` - check it before making structural changes
- Use MDX format for documentation pages
- Run `mint dev` locally to preview changes before committing
- Run `mint broken-links` to check for broken links

## Mintlify components

Use Mintlify's built-in components for consistent formatting. See https://www.mintlify.com/docs/components for all available components.

## Style and formatting

- Use active voice and second person ("you")
- Keep sentences concise - one idea per sentence
- Use sentence case for headings
- When referencing UI elements, use bold: Click **Settings**
- Use code formatting for: file names, commands, paths, and code references

## Code examples

- Include language identifiers in fenced code blocks
- Add titles to code blocks when relevant: ```javascript filename.js
- Show realistic parameter values, not placeholders like `foo` or `bar`
- Include error handling for API examples

## Content structure

- Add frontmatter (title, description) to every page
- Use `sidebarTitle` in frontmatter if the nav title should differ from the page title
- Include introductory context before diving into steps or details
- Add "Next steps" or related links where helpful

## What to avoid

- Don't edit `docs.json` without understanding the navigation structure
- Don't remove existing pages without checking for inbound links
- Don't use HTML when an MDX component exists for the same purpose
- Don't add pages to navigation that don't exist yet
21 changes: 21 additions & 0 deletions docs/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 Mintlify

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
7 changes: 7 additions & 0 deletions docs/SDKs.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
title: "SDKs"
---

Official SDK's for building transparent and secure AI agents.

Coming soon.
9 changes: 9 additions & 0 deletions docs/architecture.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
title: "Architecture"
---

This document specifies a proposed standard for identity management of artificial intelligence (AI) agents in the internet. AIP is a language-agnostic protocol for establishing cryptographic identities for AI agents, enabling authentication, authorization, and audit trails across heterogeneous systems.

The proposed standard creates a framework that allows an AI agent to obtain approval to a resource running a model context protocol (MCP) server by requesting an agent identifier token tied to an end user.

This and following pages goes into the structure of the agent identifiers and the authorization process performed between the client and server through AIP.
159 changes: 159 additions & 0 deletions docs/community/contributing-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,159 @@
# Contributing to the Agent Identity Protocol (AIP)

Thank you for your interest in contributing to AIP. This project aims to establish a zero-trust identity standard for autonomous AI agents.

## Ways to Contribute

### For Security Researchers
- Threat modeling and attack surface analysis
- Penetration testing of reference implementations
- Review of cryptographic choices and identity flows

### For Platform Engineers
- Kubernetes operators and sidecar implementations
- Cloud provider integrations (AWS, GCP, Azure)
- Service mesh integrations (Istio, Linkerd)

### For AI/ML Engineers
- Agent framework integrations (LangChain, AutoGPT, CrewAI)
- MCP transport implementations
- SDK development (Python, TypeScript, Go)

### For Compliance Teams
- Regulatory mapping (SOC2, GDPR, HIPAA, FedRAMP)
- Audit log schema standardization
- Policy template libraries

## Getting Started

### Prerequisites

- Go 1.21+ (for proxy development)
- Python 3.11+ (for SDK and examples)
- Node.js 20+ (for TypeScript SDK)

### Development Setup

```bash
# Clone the repository
git clone https://github.com/ArangoGutierrez/agent-identity-protocol.git
cd agent-identity-protocol

# For Go proxy development
cd proxy && go mod download && go build ./...

# For Python SDK
cd sdk/python && pip install -e ".[dev]"

# For TypeScript SDK
cd sdk/typescript && npm install && npm run build
```

## Contribution Process

### 1. Issues First

Before starting work, please:
- Check existing issues for duplicates
- Open an issue describing what you want to work on
- Wait for maintainer feedback on approach

### 2. Branch Naming

```
feat/short-description # New features
fix/issue-number # Bug fixes
docs/what-changed # Documentation
spec/proposal-name # Specification changes
```

### 3. Commit Messages

Follow [Conventional Commits](https://www.conventionalcommits.org/):

```
feat: add OIDC token validation to proxy
fix: handle empty manifest gracefully
docs: clarify egress filtering behavior
spec: add delegation token schema
```

### 4. Pull Requests

- Fill out the PR template completely
- Ensure CI passes (lint, test, build)
- Request review from relevant CODEOWNERS
- Squash commits before merge

## Specification Changes

Changes to the AIP specification (`spec/`) require:

1. **RFC Process**: Open an issue with `[RFC]` prefix
2. **Discussion Period**: Minimum 2 weeks for community feedback
3. **Consensus**: Approval from at least 2 maintainers
4. **Backward Compatibility**: Document migration path if breaking

## Code Style

### Go
```bash
gofmt -s -w .
go vet ./...
golangci-lint run
```

### Python
```bash
ruff check .
ruff format .
mypy .
```

### TypeScript
```bash
npm run lint
npm run typecheck
```

## Testing

All code changes require tests:

```bash
# Go
go test -race -cover ./...

# Python
pytest --cov=aip

# TypeScript
npm test
```

## Documentation

- Code should be self-documenting with clear names
- Public APIs require doc comments
- Complex logic needs inline comments explaining "why"
- User-facing changes need README/docs updates

## Code of Conduct

We follow the [Contributor Covenant v2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct/).

**TL;DR**: Be respectful, inclusive, and professional. Focus on the work, not the person.

## License

By contributing to AIP, you agree that your contributions will be licensed under the [Apache License 2.0](LICENSE).

## Questions?

- **GitHub Discussions**: Architecture and design questions
- **GitHub Issues**: Bug reports and feature requests
- **Security Issues**: See [SECURITY.md](SECURITY.md)

---

Thank you for helping make AI agents safer and more accountable.
32 changes: 32 additions & 0 deletions docs/community/contributing.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Contribute to the documentation

Thank you for your interest in contributing to our documentation! This guide will help you get started.

## How to contribute

### Option 1: Edit directly on GitHub

1. Navigate to the page you want to edit
2. Click the "Edit this file" button (the pencil icon)
3. Make your changes and submit a pull request

### Option 2: Local development

1. Fork and clone this repository
2. Install the Mintlify CLI: `npm i -g mint`
3. Create a branch for your changes
4. Make changes
5. Navigate to the docs directory and run `mint dev`
6. Preview your changes at `http://localhost:3000`
7. Commit your changes and submit a pull request

For more details on local development, see our [development guide](development.mdx).

## Writing guidelines

- **Use active voice**: "Run the command" not "The command should be run"
- **Address the reader directly**: Use "you" instead of "the user"
- **Keep sentences concise**: Aim for one idea per sentence
- **Lead with the goal**: Start instructions with what the user wants to accomplish
- **Use consistent terminology**: Don't alternate between synonyms for the same concept
- **Include examples**: Show, don't just tell
5 changes: 5 additions & 0 deletions docs/community/introduction.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
title: "Introduction"
---

Check out our Github for open discussions on standardiziing AIP
109 changes: 109 additions & 0 deletions docs/docs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
{
"$schema": "https://mintlify.com/docs.json",
"theme": "aspen",
"name": "Agent Identity Protocol",
"colors": {
"primary": "#16A34A",
"light": "#07C983",
"dark": "#15803D"
},
"favicon": "/favicon.svg",
"navigation": {
"tabs": [
{
"tab": "Guides",
"groups": [
{
"group": "Getting started",
"pages": [
"index",
"why-AIP"
]
},
{
"group": "About AIP",
"pages": [
"architecture",
{
"group": "Layer 1 - Identity Attestation",
"pages": [
"layer-1-identity/identity-workflow"
]
},
{
"group": "Layer 2 - Enforcement",
"pages": [
"layer-2-enforcement/policy-reference"
]
},
{
"group": "Specifications",
"pages": [
"specs/aip-v1alpha1",
"specs/aip-v1alpha2",
"specs/aip-v1alpha3"
]
},
"faq"
]
},
{
"group": "Developing with AIP",
"pages": [
"SDKs"
]
}
]
},
{
"tab": "Community",
"groups": [
{
"group": "Github",
"pages": [
"community/introduction"
]
},
{
"group": "Contributing",
"pages": [
"community/contributing",
"community/contributing-policy"
]
}
]
}
],
"global": {
"anchors": [

]
}
},
"logo": {
"light": "/logo/light.svg",
"dark": "/logo/dark.svg"
},
"navbar": {
"primary": {
"type": "button",
"label": "Github",
"href": "https://github.com/openagentidentityprotocol"
}
},
"contextual": {
"options": [
"copy",
"view",
"chatgpt",
"claude",
"perplexity"
]
},
"footer": {
"socials": {
"github": "https://github.com/openagentidentityprotocol"
}
},
"description": "The standard for AI agent identity attestation"
}
Loading
Loading