AI executes. Humans authorize. Machines verify.
Try the Live Demo - Verify your humanity with World ID
Proof of Human Intent is a protocol that creates cryptographically verifiable proof that a real human approved critical software actions.
βWho approved this?β βThe AI did.β This protocol ends that conversation.
World ID (ZK Proof) Γ Git Signing Γ Transparency Log
= Verifiable Human Approval
2024: GitHub Copilot writes code
2025: AI Agents create PRs autonomously
2026: AI Agents deploy to production β We're heading here
Question: Can you PROVE a human approved it?
| Traditional | AI Era |
|---|---|
| Human writes code | AI writes code |
| Human reviews | AI reviews |
| Human merges | ??? |
Humans are shifting from "implementers" to "approvers."
But there's no way to cryptographically verify that a humanβnot an AIβactually approved an action.
PoHI answers three questions:
| Question | Technology | Proof |
|---|---|---|
| Who? | PoP Providers | Unique human verification |
| What? | Git + DID | Specific commit approved |
| When? | SCITT Log | Immutable timestamp |
| Provider | Verification Type | Sybil Resistance | Status |
|---|---|---|---|
| World ID | ZK proof (Orb/Device) | High | β Tested (2025-01) |
| Gitcoin Passport | Web3 identity score | Medium | β Tested (2025-01) |
| BrightID | Social graph verification | Medium | π§ Implemented |
| Civic | Gateway Pass | Medium | π§ Implemented |
| Proof of Humanity | Kleros registry | High | π§ Implemented |
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Proof of Human Intent β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β VERIFY βββββΆβ BIND βββββΆβ RECORD β β
β β "Human?" β β "What?" β β "Proof" β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β β β β
β βΌ βΌ βΌ β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β PoP β β Git+DID β β SCITT β β
β β Provider β β Signing β β Log β β
β ββββββββββββ ββββββββββββ ββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
sequenceDiagram
participant AI as π€ AI Agent
participant GH as π GitHub
participant Human as π€ Human
participant PoHI as π PoHI
participant WorldID as ποΈ World ID
AI->>GH: Create PR
GH->>Human: Review request
Human->>PoHI: Request approval
PoHI->>Human: Show World ID QR
Human->>WorldID: Scan (World App)
WorldID-->>PoHI: ZK Proof (signal=commit SHA)
PoHI->>GH: Status: Verified Human β
GH->>AI: Merge enabled
- Node.js 18+
- World ID App (Download)
- GitHub repository
# Core library (chain-neutral, zero dependencies)
npm install pohi-core
# EVM utilities (for on-chain recording)
npm install pohi-evm
# SDK (full client for World Chain)
npm install pohi-sdk
# CLI tool
npm install -g pohi-cliimport { createAttestation, computeSignal, validateAttestation } from 'pohi-core';
// Create an attestation
const attestation = createAttestation(
// Subject: what is being approved
{
repository: 'owner/repo',
commit_sha: 'abc123...',
action: 'DEPLOY',
description: 'Production deployment v2.0'
},
// Proof: evidence of human verification
{
method: 'world_id',
verification_level: 'orb',
nullifier_hash: '0x...',
signal: computeSignal('owner/repo', 'abc123...')
}
);
// Validate structure and hash integrity
const result = validateAttestation(attestation);
console.log(result.valid); // true# Request human approval for a commit
pohi request --repo owner/repo --commit abc123
# Verify an existing attestation
pohi verify --repo owner/repo --commit abc123# .github/workflows/human-approval.yml
name: Require Human Approval
on:
pull_request:
types: [labeled]
jobs:
verify:
if: github.event.label.name == 'ready-to-merge'
runs-on: ubuntu-latest
steps:
- uses: pohi-protocol/action@v1
with:
world-id-app: ${{ secrets.WORLD_ID_APP_ID }}
required-level: orb| Package | Description | Status |
|---|---|---|
pohi-core |
Core types & validation (zero deps) | β v0.1.0 |
pohi-evm |
EVM utilities (keccak256, encodePacked) | β v0.1.0 |
pohi-sdk |
World Chain client | β v0.1.0 |
pohi-cli |
Command-line tool | β v0.1.0 |
pohi-action |
GitHub Action | β v0.1.0 |
pohi-gitlab-ci |
GitLab CI Component | β v0.1.0 |
pohi-bitbucket-pipe |
Bitbucket Pipe | β v0.1.0 |
pohi-contracts |
Solidity contracts (Foundry) | β v0.1.0 |
pohi-demo |
Next.js + World ID demo | β Live |
"Proof of Human Intent: Cryptographically Verifiable Human Approval for AI-Driven Software Development"
- π arXiv: In preparation (expected 2026)
- π Source:
paper/
@article{pohi2026,
title={Proof of Human Intent: Cryptographically Verifiable Human Approval for AI-Driven Software Development},
author={Ikko Eltociear Ashimine},
journal={arXiv preprint},
year={2026}
}On-chain attestation recording is optional and currently in development.
| Network | Status | Contract Address |
|---|---|---|
| World Chain Mainnet | π§ Coming Soon | TBD |
| World Chain Sepolia | π§ Coming Soon | TBD |
Note: PoHI works without on-chain recording. The core protocol uses off-chain attestations that can be independently verified. On-chain recording adds an additional immutable transparency layer.
PoHI has undergone an initial self-review focusing on:
- Replay attacks: Mitigated by binding attestations to specific commit SHAs
- Impersonation risks: Prevented by World ID's ZK proof of personhood
- CI/CD workflow integrity: Isolated verification in ephemeral containers
For full security documentation, see SECURITY.md.
| Attack | Mitigation |
|---|---|
| Sybil (fake identities) | World ID nullifier hash |
| Replay (reuse proof) | Commit SHA in signal |
| Tampering | Merkle tree proofs |
| Impersonation | ZK proof of personhood |
- World ID Orb correctly identifies unique humans
- Transparency log is append-only
- Cryptographic primitives are secure
- Architecture design
- Paper draft (Abstract)
- Core library implementation
- EVM utilities package
- SDK for World Chain
- CLI tool
- GitHub Action
- GitLab CI Component
- Bitbucket Pipe
- Smart contracts (Foundry)
- Demo application (Next.js + World ID)
- npm publish (v0.1.0)
- Live demo deployment
- Security self-review (see SECURITY.md)
- arXiv submission
- External audit
- v1.0 release
| Technology | Purpose | Link |
|---|---|---|
| World ID | Proof of personhood | docs.world.org |
| IETF SCITT | Supply chain transparency | datatracker.ietf.org |
| Sigstore | Keyless code signing | sigstore.dev |
| W3C DID | Decentralized identifiers | w3.org |
| W3C VC | Verifiable credentials | w3.org |
Contributions are welcome! This project is in early stages.
- β Star this repo to show support
- π Open issues for discussion
- π§ PRs welcome after v0.1 release
Web3 is not for speculation. It's infrastructure for preserving human intent and accountability.
As AI takes over implementation, humans become approvers.
PoHI ensures that approval is real, verifiable, and permanent.
Proof of Human Intent
Your approval, cryptographically preserved for the future.