Skip to main content

Agent-side SDK + CLI for the Handshake Prompt Protocol

Project description

handshake-prompt-agent

Agent-side SDK + CLI for the Handshake Prompt Protocol (HPP). Zero external dependencies (Python stdlib only).

Install

pip install handshake-prompt-agent

CLI

# Extract credentials from a handshake prompt
handshake-prompt-agent parse-prompt --prompt "$(pbpaste)"

# Get current schema + values
handshake-prompt-agent get-context --sid <sid> --token <token> --base <url>

# Submit field values
handshake-prompt-agent action --sid <sid> --token <token> --base <url> \
    --data '{"name":"Alice","age":30}'

# Get incremental changes since last submit
handshake-prompt-agent get-diff --sid <sid> --token <token> --base <url> \
    --since "2026-06-23T10:22:00+08:00"

Programmatic API

from handshake_prompt_agent import HandshakeAgent, parse_prompt

# Parse user-pasted prompt
creds = parse_prompt(prompt_text)
agent = HandshakeAgent(
    sid=creds['sessionId'],
    token=creds['token'],
    base_url=creds['baseUrl'],
)

# Read current state (call this BEFORE every action!)
state = agent.get_context()
print(state['schema'])     # field definitions
print(state['context'])    # current values + who filled (user/ai/empty/user_edit)
print(state['missing'])    # required-but-empty keys

# Apply values
result = agent.action({
    'name':  'Alice',
    'email': 'alice@example.com',
    'age':   30,
})
print(result['applied'])   # fields successfully written
print(result['rejected'])  # fields blocked (e.g. user already filled)
print(result['context'])   # full state snapshot after the action

Skill integration

This package is intended to be used inside an Agent skill (e.g. Codemaker, Claude, Cursor). A typical skill file:

# my-handshake-skill SKILL.md

Triggered when user pastes a message containing `sessionId:` and `token:`.

Workflow:
1. parse-prompt to extract credentials
2. get-context to read current schema + values
3. reason out field values based on user's request
4. action to submit values

Always call get-context BEFORE each action to see latest state
(user may have edited fields manually).

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

handshake_prompt_agent-0.1.1.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

handshake_prompt_agent-0.1.1-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file handshake_prompt_agent-0.1.1.tar.gz.

File metadata

  • Download URL: handshake_prompt_agent-0.1.1.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for handshake_prompt_agent-0.1.1.tar.gz
Algorithm Hash digest
SHA256 818036f58cec105405aca095a6d1f4aca38f8845726ebfce9428154a6cb0b8bc
MD5 cfba022f60c8d9d2f2cace43298d5395
BLAKE2b-256 b3b14f261ebc4751ee431e467dfb7e2b81a864b1ad18ed048623eb096634e859

See more details on using hashes here.

File details

Details for the file handshake_prompt_agent-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for handshake_prompt_agent-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3739145e7b90bd039be72400adfcfe3ae4baf3d598061a77a90ecb51e4c650a5
MD5 d93929c9a1196381dbba500af8d6e098
BLAKE2b-256 420312c48162f0f9af3fd9fbdb90b8eb71da9fae55c262b69568679d33add9e1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page