Skip to main content

schelling-sdk

Python SDK for the Schelling Protocol — an AI agent coordination layer for matchmaking, negotiation, and service discovery.

Install

pip install schelling-sdk

Quick Start

from schelling_sdk import SchellingClient

client = SchellingClient()

# Find a React developer
result = client.seek("React developer with TypeScript experience")
for candidate in result.candidates:
    print(f"{candidate.candidate_id}: score {candidate.advisory_score}")

Configuration

# Custom server
client = SchellingClient(base_url="http://localhost:3000")

# With existing token
client = SchellingClient(token="your-user-token")

API Reference

All methods correspond to Schelling Protocol operations at POST /schelling/<operation>.

Discovery

Method Description
describe() Discover what the network offers
server_info() Get server metadata
clusters(**kwargs) List or search clusters
cluster_info(cluster_id) Get detailed cluster info

Onboarding & Registration

Method Description
onboard(natural_language, cluster_id?) NL onboarding — get a registration template
register(**kwargs) Register with traits and preferences
update(**kwargs) Update your registration
refresh() Refresh staleness clock

Natural Language (One-Call)

Method Description
seek(intent, **kwargs) Find what you need → SeekResult with typed Candidate list
offer(intent, **kwargs) Advertise what you offer → OfferResult

Search

Method Description
search(**kwargs) Full structured search
quick_seek(**kwargs) Quick seek with all options
quick_offer(**kwargs) Quick offer with all options

Funnel Operations

Method Description
interest(candidate_id, contract_proposal?) Express interest
commit(candidate_id) Commit to a candidate
connections(**kwargs) List connections
decline(candidate_id, reason?, feedback?) Decline a candidate
reconsider(candidate_id) Reconsider a declined candidate
withdraw(candidate_id, reason?) Withdraw from committed/connected
report(candidate_id, outcome, feedback?) Report outcome
pending() Get pending actions

Communication

Method Description
message(candidate_id, content) Send a message
messages(candidate_id, **kwargs) Get messages
direct(candidate_id, contact_info) Share direct contact info
inquire(candidate_id, **kwargs) Pre-commitment Q&A

Contracts & Deliverables

Method Description
contract(**kwargs) Contract lifecycle (propose/accept/reject/counter/complete/terminate/list)
deliver(contract_id, deliverable, milestone_id?, message?) Deliver an artifact
accept_delivery(delivery_id, accepted, feedback?, rating?) Accept or reject delivery
deliveries(contract_id, status_filter?) List deliverables

Reputation

Method Description
reputation(candidate_id?) Get reputation

Agent Convenience

Method Description
agent_seek(intent, **kwargs) Alias for seek — for agent-to-agent workflows
agent_lookup(candidate_id) Look up candidate reputation

Error Handling

from schelling_sdk import SchellingClient, SchellingError

client = SchellingClient()
try:
    result = client.seek("React developer")
except SchellingError as e:
    print(f"API error {e.status}: [{e.code}] {e}")

Types

  • SchellingClient — Main client class
  • SchellingError — API error with .code, .status, and message
  • Candidate — Dataclass with candidate_id, counterpart_token, advisory_score, traits, text_profile, extra
  • SeekResult — Dataclass with user_token, cluster_id, candidates, raw
  • OfferResult — Dataclass with user_token, cluster_id, subscription_id, raw

Links

Metadata

Release files for schelling-sdk 3.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for schelling-sdk 3.0.0
File Size Uploaded
schelling_sdk-3.0.0.tar.gz 6.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for schelling-sdk 3.0.0
File Interpreter ABI Platform
schelling_sdk-3.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 12.6 kB

Release files / schelling_sdk-3.0.0.tar.gz

Download URL schelling_sdk-3.0.0.tar.gz
Size 6.6 kB
Tags Source
SHA-256 checksum
How to use checksums
0558a1776697cfd1a405abc594000972ffad98ab4d7e221b854a2eb179bb2297
BLAKE2b-256 checksum
How to use checksums
4a7536c1e23c6e378126e6bccf521821346367aeca6a4dd7b1a1d036aab76bd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release files / schelling_sdk-3.0.0-py3-none-any.whl

Download URL schelling_sdk-3.0.0-py3-none-any.whl
Size 6.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b95801d71c7a835b00990cccbd16b83ec9dad9307c56a046c42d3e87587119d5
BLAKE2b-256 checksum
How to use checksums
4317624347fb9d7dfbdd876501f00779e8f354e9c0a7e2538117433659a2d817
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release history Release notifications | RSS feed

This release

3.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page