summaryrefslogtreecommitdiffhomepage
path: root/stainless.yml
blob: f8d654fb475adfcc8ac3aee21a6bfcd027053552 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# yaml-language-server: $schema=https://app.stainless.com/config-internal.schema.json

organization:
  name: opencode
  docs: "https://opencode.ai/docs"
  contact: "[email protected]"

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

  event:
    methods:
      list:
        endpoint: get /event
        paginated: false
        streaming:
          # This method is always streaming.
          param_discriminator: null

  app:
    models:
      app: App
    methods:
      get: get /app
      init: post /app/init

  find:
    methods:
      text: get /find
      files: get /find/file
      symbols: get /find/symbol

  file:
    methods:
      read: get /file
      status: get /file/status

  config:
    models:
      config: Config
      keybinds: KeybindsConfig
      mcpLocal: McpLocalConfig
      mcpRemote: McpRemoteConfig
      provider: Provider
      model: Model
    methods:
      get: get /config
      providers: get /config/providers

  session:
    models:
      session: Session
      message: Message
      toolCall: ToolCall
      toolPartialCall: ToolPartialCall
      toolResult: ToolResult
      textPart: TextPart
      reasoningPart: ReasoningPart
      toolInvocationPart: ToolInvocationPart
      sourceUrlPart: SourceUrlPart
      filePart: FilePart
      stepStartPart: StepStartPart
      messagePart: MessagePart
    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

settings:
  disable_mock_tests: true
  license: Apache-2.0

security:
  - {}

readme:
  example_requests:
    default:
      type: request
      endpoint: get /event
      params: {}
    headline:
      type: request
      endpoint: get /event
      params: {}