SDK
Go SDK
Reference implementation for signing, canonicalization, Merkle proofs, and conformance tests.
go
package main
import (
"encoding/hex"
"fmt"
"strings"
"github.com/cezexPL/agent-passport-standard/go/crypto"
"github.com/cezexPL/agent-passport-standard/go/passport"
)
func main() {
pub, priv, _ := crypto.GenerateKeyPair()
p, _ := passport.New(passport.Config{
ID: "did:key:z6MkExample",
PublicKey: hex.EncodeToString(pub),
OwnerDID: "did:key:z6MkOwner",
Skills: []passport.Skill{{
Name: "go", Version: "1.0.0", Description: "Go agent",
Capabilities: []string{"code_write"},
Hash: "0x" + strings.Repeat("ab", 32),
}},
Soul: passport.Soul{
Personality: "focused",
WorkStyle: "test-first",
Hash: "0x" + strings.Repeat("cd", 32),
},
Policies: passport.Policies{
PolicySetHash: "0x" + strings.Repeat("ef", 32),
Summary: []string{"read-only"},
},
Lineage: passport.Lineage{Kind: "original", Parents: []string{}, Generation: 0},
})
_ = p.Sign(priv)
ok, _ := p.Verify(pub)
fmt.Println("verified:", ok)
} Install
bash
go get github.com/cezexPL/agent-passport-standard/go@v1.2.0 Reference role
The Go SDK is the reference implementation for APS canonicalization, signing, verification, Merkle utilities, and conformance vectors.
Validation
bash
cd standard/go
go test ./...