logicsrc/packages/sdk/README.md
Anthony Ettinger 68f3151699 Merge master; OpenFleet keeps its name, PR 177's rental descriptor becomes OpenRental
PR 177 shipped a second OpenFleet under the same slug: a published listing of OpenAgent profiles and ipfile swarms with CoinPay rental offers. Anthony ruled that OpenFleet means the human-controlled fleet and the record of who spawned whom, so the rental contract is renamed OpenRental (slug openrental, catalogs family, group noun listing): docs/openrental.md, logicsrc-openrental.schema.json with type logicsrc.openrental and scope kind listing, fixtures/openrental, createOpenRental and OpenRental* types in the SDK, the openrental validator kind. Minor bumps because an export moved: @logicsrc/schemas 0.2.0, @logicsrc/validators 0.2.0, @logicsrc/sdk 0.2.0. The discovery contract test now covers openfleet, openrental and openwall, one per family, and accepts a landing-page link in llms.txt.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>

Claude-Session: https://claude.ai/code/session_01RZV4zJ2pDZLNN3kE5jFCmV
2026-09-13 08:45:33 +00:00

1,018 B

@logicsrc/sdk

LogicSRC contract types and constructors for tasks, AgentSwarm sessions and OpenRental descriptors. These helpers construct documents; they do not start agents, resolve remote identities or initiate payments.

npm install @logicsrc/sdk @logicsrc/validators
import { createOpenRental } from "@logicsrc/sdk";
import { validate } from "@logicsrc/validators";

const listing = createOpenRental({
  id: "https://example.com/listings/research",
  name: "Research",
  owner_did: "operator.coinpay",
  members: [{
    kind: "openagent",
    id: "analyst.coinpay",
    url: "https://example.com/agents/analyst.json"
  }]
});

const result = validate("openrental", listing);
if (!result.ok) throw new Error(JSON.stringify(result.errors));

Use @logicsrc/validators 0.2.0 or newer for OpenRental validation. See the OpenRental specification for member bindings, exact decimal rental rates and CoinPay settlement metadata.

MIT © Profullstack, Inc.