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
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
_site
.sass-cache
.jekyll-cache
.jekyll-metadata
vendor
25 changes: 25 additions & 0 deletions 404.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
permalink: /404.html
layout: default
---

<style type="text/css" media="screen">
.container {
margin: 10px auto;
max-width: 600px;
text-align: center;
}
h1 {
margin: 30px 0;
font-size: 4em;
line-height: 1;
letter-spacing: -1px;
}
</style>

<div class="container">
<h1>404</h1>

<p><strong>Page not found :(</strong></p>
<p>The requested page could not be found.</p>
</div>
14 changes: 14 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
source 'https://rubygems.org'

gem "jekyll", "~> 4.4.1" # installed by `gem jekyll`

gem "jekyll-theme-primer", "~> 0.6.0" # Simple GitHub-style theme
gem "base64"
gem "csv"

gem "jekyll-github-metadata", ">= 2.15"

gem "jekyll-include-cache", group: :jekyll_plugins
gem "jekyll-sitemap", group: :jekyll_plugins

gem "html-proofer", "~> 5.0", :group => :development
226 changes: 226 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,226 @@
GEM
remote: https://rubygems.org/
specs:
Ascii85 (2.0.1)
addressable (2.8.7)
public_suffix (>= 2.0.2, < 7.0)
afm (0.2.2)
async (2.24.0)
console (~> 1.29)
fiber-annotation
io-event (~> 1.9)
metrics (~> 0.12)
traces (~> 0.15)
base64 (0.2.0)
bigdecimal (3.1.9)
colorator (1.1.0)
concurrent-ruby (1.3.5)
console (1.30.2)
fiber-annotation
fiber-local (~> 1.1)
json
csv (3.3.4)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
ethon (0.16.0)
ffi (>= 1.15.0)
eventmachine (1.2.7)
faraday (2.13.1)
faraday-net_http (>= 2.0, < 3.5)
json
logger
faraday-net_http (3.4.0)
net-http (>= 0.5.0)
ffi (1.17.2-aarch64-linux-gnu)
ffi (1.17.2-aarch64-linux-musl)
ffi (1.17.2-arm-linux-gnu)
ffi (1.17.2-arm-linux-musl)
ffi (1.17.2-arm64-darwin)
ffi (1.17.2-x86_64-darwin)
ffi (1.17.2-x86_64-linux-gnu)
ffi (1.17.2-x86_64-linux-musl)
fiber-annotation (0.2.0)
fiber-local (1.1.0)
fiber-storage
fiber-storage (1.0.1)
forwardable-extended (2.6.0)
google-protobuf (4.31.0)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-aarch64-linux-gnu)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-aarch64-linux-musl)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-arm64-darwin)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-x86_64-darwin)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-x86_64-linux-gnu)
bigdecimal
rake (>= 13)
google-protobuf (4.31.0-x86_64-linux-musl)
bigdecimal
rake (>= 13)
hashery (2.1.2)
html-proofer (5.0.10)
addressable (~> 2.3)
async (~> 2.1)
nokogiri (~> 1.13)
pdf-reader (~> 2.11)
rainbow (~> 3.0)
typhoeus (~> 1.3)
yell (~> 2.0)
zeitwerk (~> 2.5)
http_parser.rb (0.8.0)
i18n (1.14.7)
concurrent-ruby (~> 1.0)
io-event (1.10.0)
jekyll (4.4.1)
addressable (~> 2.4)
base64 (~> 0.2)
colorator (~> 1.0)
csv (~> 3.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
json (~> 2.6)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (~> 0.3, >= 0.3.6)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-github-metadata (2.16.1)
jekyll (>= 3.4, < 5.0)
octokit (>= 4, < 7, != 4.4.0)
jekyll-include-cache (0.2.1)
jekyll (>= 3.7, < 5.0)
jekyll-sass-converter (3.1.0)
sass-embedded (~> 1.75)
jekyll-seo-tag (2.8.0)
jekyll (>= 3.8, < 5.0)
jekyll-sitemap (1.4.0)
jekyll (>= 3.7, < 5.0)
jekyll-theme-primer (0.6.0)
jekyll (> 3.5, < 5.0)
jekyll-github-metadata (~> 2.9)
jekyll-seo-tag (~> 2.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.12.0)
kramdown (2.5.1)
rexml (>= 3.3.9)
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.7.0)
mercenary (0.4.0)
metrics (0.12.2)
net-http (0.6.0)
uri
nokogiri (1.18.8-aarch64-linux-gnu)
racc (~> 1.4)
nokogiri (1.18.8-aarch64-linux-musl)
racc (~> 1.4)
nokogiri (1.18.8-arm-linux-gnu)
racc (~> 1.4)
nokogiri (1.18.8-arm-linux-musl)
racc (~> 1.4)
nokogiri (1.18.8-arm64-darwin)
racc (~> 1.4)
nokogiri (1.18.8-x86_64-darwin)
racc (~> 1.4)
nokogiri (1.18.8-x86_64-linux-gnu)
racc (~> 1.4)
nokogiri (1.18.8-x86_64-linux-musl)
racc (~> 1.4)
octokit (6.1.1)
faraday (>= 1, < 3)
sawyer (~> 0.9)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
pdf-reader (2.14.1)
Ascii85 (>= 1.0, < 3.0, != 2.0.0)
afm (~> 0.2.1)
hashery (~> 2.0)
ruby-rc4
ttfunk
public_suffix (6.0.2)
racc (1.8.1)
rainbow (3.1.1)
rake (13.2.1)
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.4.1)
rouge (4.5.2)
ruby-rc4 (0.1.5)
safe_yaml (1.0.5)
sass-embedded (1.89.0-aarch64-linux-gnu)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-aarch64-linux-musl)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-arm-linux-gnueabihf)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-arm-linux-musleabihf)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-arm64-darwin)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-x86_64-darwin)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-x86_64-linux-gnu)
google-protobuf (~> 4.31)
sass-embedded (1.89.0-x86_64-linux-musl)
google-protobuf (~> 4.31)
sawyer (0.9.2)
addressable (>= 2.3.5)
faraday (>= 0.17.3, < 3)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
traces (0.15.2)
ttfunk (1.8.0)
bigdecimal (~> 3.1)
typhoeus (1.4.1)
ethon (>= 0.9.0)
unicode-display_width (2.6.0)
uri (1.0.3)
webrick (1.9.1)
yell (2.2.2)
zeitwerk (2.7.2)

PLATFORMS
aarch64-linux-gnu
aarch64-linux-musl
arm-linux-gnu
arm-linux-gnueabihf
arm-linux-musl
arm-linux-musleabihf
arm64-darwin
x86_64-darwin
x86_64-linux-gnu
x86_64-linux-musl

DEPENDENCIES
base64
csv
html-proofer (~> 5.0)
jekyll (~> 4.4.1)
jekyll-github-metadata (>= 2.15)
jekyll-include-cache
jekyll-sitemap
jekyll-theme-primer (~> 0.6.0)

BUNDLED WITH
2.6.9
28 changes: 14 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,30 +72,30 @@ graph TD

## Process

The NIP process is intended to provide a consistent and controlled path for new features, standards, and protocols to be proposed, debated, and adopted. For details on the NIP process, including how to submit a NIP, please refer to [NIP-0: NIP Process](./NIPs/nip-0.md) and use the [nip-template.md](./nip-template.md) for submissions.
The NIP process is intended to provide a consistent and controlled path for new features, standards, and protocols to be proposed, debated, and adopted. For details on the NIP process, including how to submit a NIP, please refer to [NIP-0: NIP Process](./nips/nip-0.md) and use the [nip-template.md](./nip-template.md) for submissions.

## Current NIPs

Below is a list of current Nuwa Improvement Proposals. Each NIP has a status indicating its current stage in the process (e.g., Draft, Proposed, Accepted, Final, Rejected).

| NIP Number | Title | Summary | Status |
|------------|------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|
| [0](./NIPs/nip-0.md) | NIP Process | Defines the Nuwa Improvement Proposal (NIP) process, outlining stages, roles, and criteria for proposing, discussing, and integrating changes. | Living |
| [1](./NIPs/nip-1.md) | Agent Single DID Multi-Key Model | Proposes a decentralized identity model for Agents using a single master DID to manage multiple operational keys and standardizes service discovery. | Draft |
| [2](./NIPs/nip-2.md) | DID-Based Authentication Protocol | Defines a general-purpose authentication protocol based on NIP-1 DIDs for proving identity and message integrity. | Draft |
| [3](./NIPs/nip-3.md) | Custodian Delegated Control Protocol | Allows Web2 users to create Agent DIDs via a Custodian service without directly managing crypto wallets. | Draft |
| [4](./NIPs/nip-4.md) | A2A Payment Channel Protocol | Defines a protocol for A2A payment channels for efficient, off-chain micropayments, especially for protocol-level fees. | Draft |
| [5](./NIPs/nip-5.md) | Fiat Proxy Service for AI Agents | Enables AI Agents to interact with fiat payment systems through a standardized, discoverable Fiat Proxy service, authenticated via NIP-2. | Draft |
| [6](./NIPs/nip-6.md) | Unified Agent State Synchronization | Defines a P2P protocol using CRDTs to synchronize an agent's state across multiple devices/applications, ensuring consistency and offline support. | Draft |
| [7](./NIPs/nip-7.md) | Agent Capability Protocol — Capability Package Specification | Specifies the ".acp.yaml" format for modular Agent Capability Packages, bundling schema, prompts, tools, and metadata. | Draft |
| [8](./NIPs/nip-8.md) | Agent State Model (ASM): A Unified State Management Framework | Extends JSON-Schema with `x-asm` annotations for describing, merging (CRDTs), querying (ASM-QL), and managing persistent agent states. | Draft |
| [9](./NIPs/nip-9.md) | Agent LLM Gateway Protocol | Defines a protocol for AI Agents to access LLM services through verifiable, identity-bound gateways with standardized request/response and payment integration. | Draft |
| [10](./NIPs/nip-10.md) | MCP Identity Authentication and Payment Extension Protocol | Extends the Model Context Protocol (MCP) with standard mechanisms for identity authentication (NIP-1/2) and payment (NIP-4). | Draft |
| [11](./NIPs/nip-11.md) | A2A Agent Service Payment Protocol | Defines a protocol for on-demand payment for application-level services provided by AI Agents to User Agents, using direct pre-payment or NIP-4 channels. | Draft |
| [0](./nips/nip-0.md) | NIP Process | Defines the Nuwa Improvement Proposal (NIP) process, outlining stages, roles, and criteria for proposing, discussing, and integrating changes. | Living |
| [1](./nips/nip-1.md) | Agent Single DID Multi-Key Model | Proposes a decentralized identity model for Agents using a single master DID to manage multiple operational keys and standardizes service discovery. | Draft |
| [2](./nips/nip-2.md) | DID-Based Authentication Protocol | Defines a general-purpose authentication protocol based on NIP-1 DIDs for proving identity and message integrity. | Draft |
| [3](./nips/nip-3.md) | Custodian Delegated Control Protocol | Allows Web2 users to create Agent DIDs via a Custodian service without directly managing crypto wallets. | Draft |
| [4](./nips/nip-4.md) | A2A Payment Channel Protocol | Defines a protocol for A2A payment channels for efficient, off-chain micropayments, especially for protocol-level fees. | Draft |
| [5](./nips/nip-5.md) | Fiat Proxy Service for AI Agents | Enables AI Agents to interact with fiat payment systems through a standardized, discoverable Fiat Proxy service, authenticated via NIP-2. | Draft |
| [6](./nips/nip-6.md) | Unified Agent State Synchronization | Defines a P2P protocol using CRDTs to synchronize an agent's state across multiple devices/applications, ensuring consistency and offline support. | Draft |
| [7](./nips/nip-7.md) | Agent Capability Protocol — Capability Package Specification | Specifies the ".acp.yaml" format for modular Agent Capability Packages, bundling schema, prompts, tools, and metadata. | Draft |
| [8](./nips/nip-8.md) | Agent State Model (ASM): A Unified State Management Framework | Extends JSON-Schema with `x-asm` annotations for describing, merging (CRDTs), querying (ASM-QL), and managing persistent agent states. | Draft |
| [9](./nips/nip-9.md) | Agent LLM Gateway Protocol | Defines a protocol for AI Agents to access LLM services through verifiable, identity-bound gateways with standardized request/response and payment integration. | Draft |
| [10](./nips/nip-10.md) | MCP Identity Authentication and Payment Extension Protocol | Extends the Model Context Protocol (MCP) with standard mechanisms for identity authentication (NIP-1/2) and payment (NIP-4). | Draft |
| [11](./nips/nip-11.md) | A2A Agent Service Payment Protocol | Defines a protocol for on-demand payment for application-level services provided by AI Agents to User Agents, using direct pre-payment or NIP-4 channels. | Draft |

## How to Contribute

Contributions to NIPs are welcome! Please read [NIP-0: NIP Process](./NIPs/nip-0.md) for details on how to contribute. New proposals should use the [nip-template.md](./nip-template.md).
Contributions to NIPs are welcome! Please read [NIP-0: NIP Process](./nips/nip-0.md) for details on how to contribute. New proposals should use the [nip-template.md](./nip-template.md).

Discussions related to NIPs typically occur in the GitHub issues or discussion forums linked within each NIP document.

Expand Down
45 changes: 45 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# Site settings
title: Nuwa Improvement Proposals
email: hi@nuwa.dev
description: >-
A collection of Nuwa Improvement Proposals (NIPs).
baseurl: ""
url: "https://nips.nuwa.dev"
twitter_username: nuwadev
github_username: nuwa-protocol
repository: nuwa-protocol/NIPs

# Build settings
theme: jekyll-theme-primer
permalink: pretty

# Custom layout for NIPs directory
defaults:
- scope:
path: "nips"
values:
layout: "page"

# Configure GitHub metadata plugin
github:
repository_url: https://github.com/nuwa-protocol/NIPs

# Enable Jekyll plugins
plugins:
- jekyll-seo-tag
- jekyll-github-metadata
- jekyll-include-cache
- jekyll-sitemap

# Standard excludes
exclude:
- .sass-cache/
- .jekyll-cache/
- gemfiles/
- Gemfile
- Gemfile.lock
- node_modules/
- vendor/bundle/
- vendor/cache/
- vendor/gems/
- vendor/ruby/
Loading