Help us shape the future of Go! Take the 2026 Go Developer Survey

agentsuite

package module
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 21, 2026 License: MIT Imports: 5 Imported by: 0

README

AgentSuite

Teams need to share an agent's instructions and tools without guessing which files and versions belong together.

You hand a release-notes agent to another team whose tools support AgentSuite.

Its instructions and tool definitions travel together, with fingerprints for referenced files.

Their tooling checks the package before loading it into a runtime.

AgentSuite is a file format and Go library for tools that package or load agents. It describes instructions, tool dependencies and relationships between agents. It is not an agent runtime, image builder or registry client. Sharing a definition does not guarantee the same behavior in every runtime.

Status: draft specification and pre-1.0 library. Read the compatibility policy before adopting it.

Try the validator

With Git and Go installed, check a bundled three-agent package:

git clone https://github.com/agent-primitives/suite.git
cd suite
GOWORK=off go test -count=1 -run '^TestCoordinatorWorkersFixtureIsConformant$' -v ./internal/artifact

Expect PASS. This checks the coordinator, writer and reviewer package; it does not run an agent, model or tool. It does not prove the agent is useful or safe to execute. See the Go requirements and library usage to validate your own content.

Go deeper

Licensed under the MIT License. Copyright (c) Microsoft Corporation. See SECURITY.md for private vulnerability reporting and CODE_OF_CONDUCT.md for the Microsoft community policy.

Documentation

Overview

Package agentsuite is the compatibility facade for AgentSuite's focused Go packages. Portable types and JSON/identity helpers live in core; directory/OCI validation and semantic diff in oci; evaluation claims in evidence; and explicitly selected stored-flow validation in experimental/flow.

Aliases preserve source type identity and methods, but reflection reports the new defining packages.

The artifact facades share an internal engine, keeping evidence and diff beside private validated graph state. Offline validation does not execute agents or authenticate evaluation claims. Packing and runtime enforcement belong to consumers, not this library.

Deprecated: use github.com/agent-primitives/suite/core, github.com/agent-primitives/suite/oci, github.com/agent-primitives/suite/evidence, or github.com/agent-primitives/suite/experimental/flow. Root aliases and forwarders are retained throughout v0.7.x and will be removed in v0.8.0.

Index

Constants

View Source
const (
	ExecutionSharedSandbox           = core.ExecutionSharedSandbox
	LayoutVersion                    = core.LayoutVersion
	MediaTypeAgent                   = core.MediaTypeAgent
	MediaTypeArtifact                = core.MediaTypeArtifact
	MediaTypeBuildProfile            = core.MediaTypeBuildProfile
	MediaTypeComposition             = core.MediaTypeComposition
	MediaTypeContent                 = core.MediaTypeContent
	MediaTypeEmptyConfig             = core.MediaTypeEmptyConfig
	MediaTypeEvaluationCase          = core.MediaTypeEvaluationCase
	MediaTypeEvaluationIndex         = core.MediaTypeEvaluationIndex
	MediaTypeInstructions            = core.MediaTypeInstructions
	MediaTypeJSONSchema              = core.MediaTypeJSONSchema
	MediaTypePolicyV1                = core.MediaTypePolicyV1
	MediaTypePolicyV2                = core.MediaTypePolicyV2
	MediaTypeRuntimeProfile          = core.MediaTypeRuntimeProfile
	MediaTypeSuite                   = core.MediaTypeSuite
	MediaTypeToolProvider            = core.MediaTypeToolProvider
	MediaTypeToolProviderCatalog     = core.MediaTypeToolProviderCatalog
	MediaTypeToolProviderComposition = core.MediaTypeToolProviderComposition
	SpecVersion                      = core.SpecVersion
)
View Source
const AgentKitMountedConfig = core.AgentKitMountedConfig
View Source
const DiffAdded = oci.DiffAdded

DiffAdded is the oci definition.

View Source
const DiffModified = oci.DiffModified

DiffModified is the oci definition.

View Source
const DiffRemoved = oci.DiffRemoved

DiffRemoved is the oci definition.

View Source
const DiffReportSchemaVersion = oci.DiffReportSchemaVersion

DiffReportSchemaVersion is the oci definition.

View Source
const EvidenceJudgePolicyID = evidencepkg.EvidenceJudgePolicyID

EvidenceJudgePolicyID is the evidence definition.

View Source
const EvidenceJudgePolicyVersion = evidencepkg.EvidenceJudgePolicyVersion

EvidenceJudgePolicyVersion is the evidence definition.

View Source
const EvidencePolicyID = evidencepkg.EvidencePolicyID

EvidencePolicyID is the evidence definition.

View Source
const EvidencePolicyVersion = evidencepkg.EvidencePolicyVersion

EvidencePolicyVersion is the evidence definition.

View Source
const EvidenceSchemaVersion = evidencepkg.EvidenceSchemaVersion

EvidenceSchemaVersion is the evidence definition.

View Source
const ExecutionHTTPV1 = core.ExecutionHTTPV1
View Source
const FlowExtensionV1Alpha1 = flow.FlowExtensionV1Alpha1

FlowExtensionV1Alpha1 is the flow definition.

View Source
const FlowPathV1Alpha1 = flow.FlowPathV1Alpha1

FlowPathV1Alpha1 is the flow definition.

View Source
const FlowVersionV1Alpha1 = flow.FlowVersionV1Alpha1

FlowVersionV1Alpha1 is the flow definition.

View Source
const MediaTypeEvaluationEvidence = evidencepkg.MediaTypeEvaluationEvidence

MediaTypeEvaluationEvidence is the evidence definition.

Variables

This section is empty.

Functions

func DescriptorSizeAndDigestMatch

func DescriptorSizeAndDigestMatch(data []byte, descriptor Descriptor) bool

DescriptorSizeAndDigestMatch delegates to the shared core implementation.

func Digest

func Digest(data []byte) (string, error)

Digest delegates to the shared core implementation.

func IsValidDigest

func IsValidDigest(value string) bool

IsValidDigest delegates to the shared core implementation.

func Marshal

func Marshal(value any) ([]byte, error)

Marshal delegates to the shared core implementation.

func MatchesCanonicalDescriptor

func MatchesCanonicalDescriptor(data []byte, descriptor Descriptor) bool

MatchesCanonicalDescriptor delegates to the shared core implementation.

func Unmarshal

func Unmarshal(data []byte, out any) error

Unmarshal delegates to the shared core implementation.

func ValidateDirectory

func ValidateDirectory(root string) (*core.Report, error)

ValidateDirectory delegates to the shared oci implementation.

func ValidateExecutionContract added in v0.3.0

func ValidateExecutionContract(c ExecutionContract) error

ValidateExecutionContract checks a portable execution declaration.

func ValidateImageReference

func ValidateImageReference(value string) error

ValidateImageReference checks a registry-qualified, sha256-digested image reference.

func ValidatePath

func ValidatePath(value string) (*core.Report, error)

ValidatePath delegates to the shared oci implementation.

Types

type AffectedAgent

type AffectedAgent = oci.AffectedAgent

AffectedAgent is the oci definition.

type Agent

type Agent = core.Agent

Agent is the portable core definition.

type AgentInvoke

type AgentInvoke = core.AgentInvoke

AgentInvoke is the portable core definition.

type AgentPlatform

type AgentPlatform = core.AgentPlatform

AgentPlatform is the portable core definition.

type BrokeredCredential

type BrokeredCredential = core.BrokeredCredential

BrokeredCredential is the portable core definition.

type BuildProfile

type BuildProfile = core.BuildProfile

BuildProfile is the portable core definition.

type Composition

type Composition = core.Composition

Composition is the portable core definition.

type CompositionRef

type CompositionRef = core.CompositionRef

CompositionRef is the portable core definition.

type CompositionSelection

type CompositionSelection = core.CompositionSelection

CompositionSelection is the portable core definition.

type DelegatedAuthorization

type DelegatedAuthorization = core.DelegatedAuthorization

DelegatedAuthorization is the portable core definition.

type Descriptor

type Descriptor = core.Descriptor

Descriptor is the portable core definition.

type DiffIdentity

type DiffIdentity = oci.DiffIdentity

DiffIdentity is the oci definition.

type DiffLimitError

type DiffLimitError = oci.DiffLimitError

DiffLimitError is the oci definition.

type DiffReport

type DiffReport = oci.DiffReport

DiffReport is the oci definition.

func DiffPaths

func DiffPaths(beforePath, afterPath string) (DiffReport, error)

DiffPaths delegates to the shared oci implementation.

type DiffSummary

type DiffSummary = oci.DiffSummary

DiffSummary is the oci definition.

type EnvironmentName

type EnvironmentName = core.EnvironmentName

EnvironmentName is the portable core definition.

type EvaluationAssertion

type EvaluationAssertion = core.EvaluationAssertion

EvaluationAssertion is the portable core definition.

type EvaluationCase

type EvaluationCase = core.EvaluationCase

EvaluationCase is the portable core definition.

type EvaluationEvidence added in v0.2.0

type EvaluationEvidence = evidencepkg.EvaluationEvidence

EvaluationEvidence is the evidence definition.

type EvaluationIndex

type EvaluationIndex = core.EvaluationIndex

EvaluationIndex is the portable core definition.

type EvaluationLimits

type EvaluationLimits = core.EvaluationLimits

EvaluationLimits is the portable core definition.

type EvidenceAssertionResult added in v0.2.0

type EvidenceAssertionResult = evidencepkg.EvidenceAssertionResult

EvidenceAssertionResult is the evidence definition.

type EvidenceCaseRef added in v0.2.0

type EvidenceCaseRef = evidencepkg.EvidenceCaseRef

EvidenceCaseRef is the evidence definition.

type EvidenceCaseResult added in v0.2.0

type EvidenceCaseResult = evidencepkg.EvidenceCaseResult

EvidenceCaseResult is the evidence definition.

type EvidenceDescriptor added in v0.2.0

type EvidenceDescriptor = evidencepkg.EvidenceDescriptor

EvidenceDescriptor is the evidence definition.

type EvidenceEvaluation added in v0.2.0

type EvidenceEvaluation = evidencepkg.EvidenceEvaluation

EvidenceEvaluation is the evidence definition.

type EvidenceEvaluator added in v0.2.0

type EvidenceEvaluator = evidencepkg.EvidenceEvaluator

EvidenceEvaluator is the evidence definition.

type EvidenceEvaluatorIdentity added in v0.2.0

type EvidenceEvaluatorIdentity = evidencepkg.EvidenceEvaluatorIdentity

EvidenceEvaluatorIdentity is the evidence definition.

type EvidenceExecution added in v0.2.0

type EvidenceExecution = evidencepkg.EvidenceExecution

EvidenceExecution is the evidence definition.

type EvidenceFileRef added in v0.2.0

type EvidenceFileRef = evidencepkg.EvidenceFileRef

EvidenceFileRef is the evidence definition.

type EvidenceImplementation added in v0.2.0

type EvidenceImplementation = core.EvidenceImplementation

EvidenceImplementation is the portable core definition.

type EvidenceJudgeConfiguration added in v0.2.0

type EvidenceJudgeConfiguration = evidencepkg.EvidenceJudgeConfiguration

EvidenceJudgeConfiguration is the evidence definition.

type EvidenceJudgeResult added in v0.2.0

type EvidenceJudgeResult = evidencepkg.EvidenceJudgeResult

EvidenceJudgeResult is the evidence definition.

type EvidenceModel added in v0.2.0

type EvidenceModel = evidencepkg.EvidenceModel

EvidenceModel is the evidence definition.

type EvidencePlatform added in v0.2.0

type EvidencePlatform = evidencepkg.EvidencePlatform

EvidencePlatform is the evidence definition.

type EvidencePolicy added in v0.2.0

type EvidencePolicy = evidencepkg.EvidencePolicy

EvidencePolicy is the evidence definition.

type EvidenceRefusal added in v0.2.0

type EvidenceRefusal = evidencepkg.EvidenceRefusal

EvidenceRefusal is the evidence definition.

type EvidenceRunResult added in v0.2.0

type EvidenceRunResult = evidencepkg.EvidenceRunResult

EvidenceRunResult is the evidence definition.

type EvidenceSubject added in v0.2.0

type EvidenceSubject = evidencepkg.EvidenceSubject

EvidenceSubject is the evidence definition.

type ExecutionContract added in v0.3.0

type ExecutionContract = core.ExecutionContract

ExecutionContract is the portable core definition.

type ExecutionInput added in v0.3.0

type ExecutionInput = core.ExecutionInput

ExecutionInput is the portable core definition.

type ExpectedEvaluation added in v0.2.0

type ExpectedEvaluation = evidencepkg.ExpectedEvaluation

ExpectedEvaluation is the evidence definition.

type Extension

type Extension = core.Extension

Extension is the portable core definition.

type FieldChange

type FieldChange = oci.FieldChange

FieldChange is the oci definition.

type FileRef

type FileRef = core.FileRef

FileRef is the portable core definition.

type FlowAssertionV1Alpha1 added in v0.6.0

type FlowAssertionV1Alpha1 = flow.FlowAssertionV1Alpha1

FlowAssertionV1Alpha1 is the flow definition.

type FlowCaseV1Alpha1 added in v0.6.0

type FlowCaseV1Alpha1 = flow.FlowCaseV1Alpha1

FlowCaseV1Alpha1 is the flow definition.

type FlowEdgeRequirementV1Alpha1 added in v0.6.0

type FlowEdgeRequirementV1Alpha1 = flow.FlowEdgeRequirementV1Alpha1

FlowEdgeRequirementV1Alpha1 is the flow definition.

type FlowInputV1Alpha1 added in v0.6.0

type FlowInputV1Alpha1 = flow.FlowInputV1Alpha1

FlowInputV1Alpha1 is the flow definition.

type FlowStepV1Alpha1 added in v0.6.0

type FlowStepV1Alpha1 = flow.FlowStepV1Alpha1

FlowStepV1Alpha1 is the flow definition.

type FlowV1Alpha1 added in v0.6.0

type FlowV1Alpha1 = flow.FlowV1Alpha1

FlowV1Alpha1 is the flow definition.

type FlowV1Alpha1Graph added in v0.6.0

type FlowV1Alpha1Graph = flow.FlowV1Alpha1Graph

FlowV1Alpha1Graph is the flow definition.

func ValidateDirectoryFlowV1Alpha1 added in v0.6.0

func ValidateDirectoryFlowV1Alpha1(root string) (*FlowV1Alpha1Graph, error)

ValidateDirectoryFlowV1Alpha1 delegates to the shared flow implementation.

func ValidatePathFlowV1Alpha1 added in v0.6.0

func ValidatePathFlowV1Alpha1(path string) (*FlowV1Alpha1Graph, error)

ValidatePathFlowV1Alpha1 delegates to the shared flow implementation.

type InferenceRequirements added in v0.3.0

type InferenceRequirements = core.InferenceRequirements

InferenceRequirements is the portable core definition.

type InventoryEntry

type InventoryEntry = core.InventoryEntry

InventoryEntry is the portable core definition.

type ManifestRef

type ManifestRef = core.ManifestRef

ManifestRef is the portable core definition.

type ModelRequirement

type ModelRequirement = core.ModelRequirement

ModelRequirement is the portable core definition.

type NetworkAccess

type NetworkAccess = core.NetworkAccess

NetworkAccess is the portable core definition.

type Platform

type Platform = core.Platform

Platform is the portable core definition.

type PlatformImage

type PlatformImage = core.PlatformImage

PlatformImage is the portable core definition.

type RecordChange

type RecordChange = oci.RecordChange

RecordChange is the oci definition.

type RemoteHeader

type RemoteHeader = core.RemoteHeader

RemoteHeader is the portable core definition.

type RemoteNetworkRequirement

type RemoteNetworkRequirement = core.RemoteNetworkRequirement

RemoteNetworkRequirement is the portable core definition.

type RemoteTimeouts

type RemoteTimeouts = core.RemoteTimeouts

RemoteTimeouts is the portable core definition.

type RemoteToolProvider

type RemoteToolProvider = core.RemoteToolProvider

RemoteToolProvider is the portable core definition.

type Report

type Report = core.Report

Report is the portable core definition.

type ResolvedToolProvider

type ResolvedToolProvider = core.ResolvedToolProvider

ResolvedToolProvider is the portable core definition.

type RuntimeProfile added in v0.4.0

type RuntimeProfile = core.RuntimeProfile

RuntimeProfile is the portable core definition.

type RuntimeRequirement

type RuntimeRequirement = core.RuntimeRequirement

RuntimeRequirement is the portable core definition.

type SecretKeyRef

type SecretKeyRef = core.SecretKeyRef

SecretKeyRef is the portable core definition.

type Suite

type Suite = core.Suite

Suite is the portable core definition.

type Tool

type Tool = core.Tool

Tool is the portable core definition.

type ToolProvider

type ToolProvider = core.ToolProvider

ToolProvider is the portable core definition.

type ToolProviderCatalog

type ToolProviderCatalog = core.ToolProviderCatalog

ToolProviderCatalog is the portable core definition.

type ToolProviderComposition

type ToolProviderComposition = core.ToolProviderComposition

ToolProviderComposition is the portable core definition.

type ToolProviderCompositionRef

type ToolProviderCompositionRef = core.ToolProviderCompositionRef

ToolProviderCompositionRef is the portable core definition.

type ToolProviderDependency

type ToolProviderDependency = core.ToolProviderDependency

ToolProviderDependency is the portable core definition.

type ToolProviderRequirement

type ToolProviderRequirement = core.ToolProviderRequirement

ToolProviderRequirement is the portable core definition.

type ToolProviderVariant

type ToolProviderVariant = core.ToolProviderVariant

ToolProviderVariant is the portable core definition.

type VerifiedEvaluation added in v0.2.0

type VerifiedEvaluation = evidencepkg.VerifiedEvaluation

VerifiedEvaluation is the evidence definition.

func VerifyEvaluation added in v0.2.0

func VerifyEvaluation(layoutPath string, expected ExpectedEvaluation, evidenceReader io.Reader) (*VerifiedEvaluation, error)

VerifyEvaluation delegates to the shared evidence implementation.

func VerifyEvaluationFlowV1Alpha1 added in v0.6.0

func VerifyEvaluationFlowV1Alpha1(layout string, expected ExpectedEvaluation, evidence io.Reader) (*VerifiedEvaluation, error)

VerifyEvaluationFlowV1Alpha1 delegates to the shared evidence implementation.

Directories

Path Synopsis
Package core defines portable AgentSuite manifests, profiles, evaluation definitions, strict JSON and content identity helpers.
Package core defines portable AgentSuite manifests, profiles, evaluation definitions, strict JSON and content identity helpers.
Package evidence decodes and verifies unsigned evaluation claims against a local OCI layout.
Package evidence decodes and verifies unsigned evaluation claims against a local OCI layout.
experimental
flow
Package flow explicitly selects the experimental kmx.flow/v1alpha1 stored graph contract.
Package flow explicitly selects the experimental kmx.flow/v1alpha1 stored graph contract.
internal
artifact
Package artifact implements shared AgentSuite content loading, graph validation, evidence verification, semantic diff and experimental flow checks.
Package artifact implements shared AgentSuite content loading, graph validation, evidence verification, semantic diff and experimental flow checks.
contract
Package contract holds shared checks below portable models and artifact validation.
Package contract holds shared checks below portable models and artifact validation.
Package oci validates extracted directories and OCI layouts and computes semantic diffs.
Package oci validates extracted directories and OCI layouts and computes semantic diffs.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL