@forwardimpact/libproto
v0.1.1
Published
Shared protobuf schemas — one editable source for the service contracts every product imports.
Maintainers
Readme
@forwardimpact/libproto
Shared protobuf schemas — one editable source for the service contracts every product imports.
Purpose
libproto carries the canonical .proto files that more than one published
package needs to read:
proto/tool.proto— tool-call message types (ToolFunction,ToolCall,ToolCallResult,ToolCallMessage,QueryFilter).proto/common.proto— shared message types (Empty,Usage,Message,Choice,Embedding,Embeddings,Conversation). Importstool.protoandresource.proto.proto/resource.proto— theresource.Identifierreferenced by tool calls and conversation messages.
A consumer declares @forwardimpact/libproto as a direct runtime dependency
if and only if the consumer itself ships a .proto that imports a shared
file. Today that means the four service packages @forwardimpact/svcgraph,
@forwardimpact/svcmap, @forwardimpact/svcvector, and
@forwardimpact/svcpathway.
How consumers read the schemas
There is no JavaScript export surface — import "@forwardimpact/libproto"
yields an empty namespace object on purpose. Consumers reach the schemas via
codegen: npx fit-codegen --all scans
node_modules/@forwardimpact/*/proto/ for .proto files at install time and
treats every directory it finds as an include path.
Files
proto/tool.protoproto/common.protoproto/resource.protosrc/index.js— empty ESM module somainresolution stays clean across Node and bun.
