mirror of
https://github.com/aljazceru/opencode.git
synced 2026-01-06 01:14:52 +01:00
ci: new publish method (#1451)
This commit is contained in:
15
packages/sdk/stainless/generate.ts
Executable file
15
packages/sdk/stainless/generate.ts
Executable file
@@ -0,0 +1,15 @@
|
||||
#!/usr/bin/env bun
|
||||
import { $ } from "bun"
|
||||
const dir = new URL(".", import.meta.url).pathname
|
||||
process.chdir(dir)
|
||||
|
||||
console.log("=== Generating Stainless SDK ===")
|
||||
console.log(process.cwd())
|
||||
|
||||
await $`rm -rf go`
|
||||
await $`bun run ../../opencode/src/index.ts generate > openapi.json`
|
||||
await $`stl builds create --branch dev --pull --allow-empty --+target go`
|
||||
|
||||
await $`rm -rf ../go`
|
||||
await $`mv opencode-go/ ../go`
|
||||
await $`rm -rf ../go/.git`
|
||||
5
packages/sdk/stainless/stainless-workspace.json
Normal file
5
packages/sdk/stainless/stainless-workspace.json
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"project": "opencode",
|
||||
"openapi_spec": "openapi.json",
|
||||
"stainless_config": "stainless.yml"
|
||||
}
|
||||
151
packages/sdk/stainless/stainless.yml
Normal file
151
packages/sdk/stainless/stainless.yml
Normal file
@@ -0,0 +1,151 @@
|
||||
# yaml-language-server: $schema=https://app.stainless.com/config-internal.schema.json
|
||||
|
||||
organization:
|
||||
name: opencode
|
||||
docs: "https://opencode.ai/docs"
|
||||
contact: "support@sst.dev"
|
||||
|
||||
targets:
|
||||
typescript:
|
||||
package_name: "@opencode-ai/sdk"
|
||||
production_repo: "sst/opencode-sdk-js"
|
||||
publish:
|
||||
npm: true
|
||||
go:
|
||||
package_name: opencode
|
||||
production_repo: sst/opencode-sdk-go
|
||||
python:
|
||||
project_name: opencode-ai
|
||||
package_name: opencode_ai
|
||||
production_repo: sst/opencode-sdk-python
|
||||
publish:
|
||||
pypi: true
|
||||
|
||||
environments:
|
||||
production: http://localhost:54321
|
||||
|
||||
streaming:
|
||||
on_event:
|
||||
- kind: fallthrough
|
||||
handle: yield
|
||||
|
||||
resources:
|
||||
$shared:
|
||||
models:
|
||||
unknownError: UnknownError
|
||||
providerAuthError: ProviderAuthError
|
||||
messageAbortedError: MessageAbortedError
|
||||
|
||||
event:
|
||||
methods:
|
||||
list:
|
||||
endpoint: get /event
|
||||
paginated: false
|
||||
streaming:
|
||||
# This method is always streaming.
|
||||
param_discriminator: null
|
||||
|
||||
app:
|
||||
models:
|
||||
app: App
|
||||
logLevel: LogLevel
|
||||
provider: Provider
|
||||
model: Model
|
||||
mode: Mode
|
||||
methods:
|
||||
get: get /app
|
||||
init: post /app/init
|
||||
log: post /log
|
||||
modes: get /mode
|
||||
providers: get /config/providers
|
||||
|
||||
find:
|
||||
models:
|
||||
match: Match
|
||||
symbol: Symbol
|
||||
methods:
|
||||
text: get /find
|
||||
files: get /find/file
|
||||
symbols: get /find/symbol
|
||||
|
||||
file:
|
||||
models:
|
||||
file: File
|
||||
methods:
|
||||
read: get /file
|
||||
status: get /file/status
|
||||
|
||||
config:
|
||||
models:
|
||||
config: Config
|
||||
keybindsConfig: KeybindsConfig
|
||||
mcpLocalConfig: McpLocalConfig
|
||||
mcpRemoteConfig: McpRemoteConfig
|
||||
modeConfig: ModeConfig
|
||||
methods:
|
||||
get: get /config
|
||||
|
||||
session:
|
||||
models:
|
||||
session: Session
|
||||
message: Message
|
||||
part: Part
|
||||
textPart: TextPart
|
||||
textPartInput: TextPartInput
|
||||
filePart: FilePart
|
||||
filePartInput: FilePartInput
|
||||
filePartSourceText: FilePartSourceText
|
||||
filePartSource: FilePartSource
|
||||
fileSource: FileSource
|
||||
symbolSource: SymbolSource
|
||||
toolPart: ToolPart
|
||||
stepStartPart: StepStartPart
|
||||
stepFinishPart: StepFinishPart
|
||||
snapshotPart: SnapshotPart
|
||||
assistantMessage: AssistantMessage
|
||||
userMessage: UserMessage
|
||||
toolStatePending: ToolStatePending
|
||||
toolStateRunning: ToolStateRunning
|
||||
toolStateCompleted: ToolStateCompleted
|
||||
toolStateError: ToolStateError
|
||||
|
||||
methods:
|
||||
list: get /session
|
||||
create: post /session
|
||||
delete: delete /session/{id}
|
||||
init: post /session/{id}/init
|
||||
abort: post /session/{id}/abort
|
||||
share: post /session/{id}/share
|
||||
unshare: delete /session/{id}/share
|
||||
summarize: post /session/{id}/summarize
|
||||
messages: get /session/{id}/message
|
||||
chat: post /session/{id}/message
|
||||
revert: post /session/{id}/revert
|
||||
unrevert: post /session/{id}/unrevert
|
||||
|
||||
tui:
|
||||
methods:
|
||||
appendPrompt: post /tui/append-prompt
|
||||
openHelp: post /tui/open-help
|
||||
|
||||
settings:
|
||||
disable_mock_tests: true
|
||||
license: MIT
|
||||
|
||||
security:
|
||||
- {}
|
||||
|
||||
readme:
|
||||
example_requests:
|
||||
default:
|
||||
type: request
|
||||
endpoint: get /session
|
||||
params: {}
|
||||
headline:
|
||||
type: request
|
||||
endpoint: get /session
|
||||
params: {}
|
||||
streaming:
|
||||
type: request
|
||||
endpoint: get /event
|
||||
params: {}
|
||||
Reference in New Issue
Block a user