mirror of
https://github.com/sst/opencode.git
synced 2025-07-07 16:14:59 +00:00
ignore: run prettier
This commit is contained in:
parent
f8b78f08b4
commit
51bf193889
31 changed files with 179 additions and 411 deletions
|
@ -3,7 +3,11 @@
|
||||||
"experimental": {
|
"experimental": {
|
||||||
"hook": {
|
"hook": {
|
||||||
"file_edited": {
|
"file_edited": {
|
||||||
".json": []
|
".json": [
|
||||||
|
{
|
||||||
|
"command": ["bun", "run", "prettier", "$FILE"]
|
||||||
|
}
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"session_completed": [
|
"session_completed": [
|
||||||
{
|
{
|
||||||
|
|
12
packages/function/sst-env.d.ts
vendored
12
packages/function/sst-env.d.ts
vendored
|
@ -6,18 +6,18 @@
|
||||||
import "sst"
|
import "sst"
|
||||||
declare module "sst" {
|
declare module "sst" {
|
||||||
export interface Resource {
|
export interface Resource {
|
||||||
"Web": {
|
Web: {
|
||||||
"type": "sst.cloudflare.Astro"
|
type: "sst.cloudflare.Astro"
|
||||||
"url": string
|
url: string
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// cloudflare
|
// cloudflare
|
||||||
import * as cloudflare from "@cloudflare/workers-types";
|
import * as cloudflare from "@cloudflare/workers-types"
|
||||||
declare module "sst" {
|
declare module "sst" {
|
||||||
export interface Resource {
|
export interface Resource {
|
||||||
"Api": cloudflare.Service
|
Api: cloudflare.Service
|
||||||
"Bucket": cloudflare.R2Bucket
|
Bucket: cloudflare.R2Bucket
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -202,10 +202,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["input", "output"],
|
||||||
"input",
|
|
||||||
"output"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
"limit": {
|
"limit": {
|
||||||
|
@ -218,10 +215,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["context", "output"],
|
||||||
"context",
|
|
||||||
"output"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
|
@ -240,9 +234,7 @@
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["models"],
|
||||||
"models"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
"description": "Custom provider configurations and model overrides"
|
"description": "Custom provider configurations and model overrides"
|
||||||
|
@ -274,10 +266,7 @@
|
||||||
"description": "Environment variables to set when running the MCP server"
|
"description": "Environment variables to set when running the MCP server"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "command"],
|
||||||
"type",
|
|
||||||
"command"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -293,10 +282,7 @@
|
||||||
"description": "URL of the remote MCP server"
|
"description": "URL of the remote MCP server"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "url"],
|
||||||
"type",
|
|
||||||
"url"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -329,9 +315,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["command"],
|
||||||
"command"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -354,9 +338,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["command"],
|
||||||
"command"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -142,4 +142,3 @@ export namespace App {
|
||||||
.replace(/[^A-Za-z0-9_]/g, "-")
|
.replace(/[^A-Za-z0-9_]/g, "-")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -46,14 +46,14 @@ export const AuthListCommand = cmd({
|
||||||
prompts.outro(`${results.length} credentials`)
|
prompts.outro(`${results.length} credentials`)
|
||||||
|
|
||||||
// Environment variables section
|
// Environment variables section
|
||||||
const activeEnvVars: Array<{ provider: string, envVar: string }> = []
|
const activeEnvVars: Array<{ provider: string; envVar: string }> = []
|
||||||
|
|
||||||
for (const [providerID, provider] of Object.entries(database)) {
|
for (const [providerID, provider] of Object.entries(database)) {
|
||||||
for (const envVar of provider.env) {
|
for (const envVar of provider.env) {
|
||||||
if (process.env[envVar]) {
|
if (process.env[envVar]) {
|
||||||
activeEnvVars.push({
|
activeEnvVars.push({
|
||||||
provider: provider.name || providerID,
|
provider: provider.name || providerID,
|
||||||
envVar
|
envVar,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,12 +7,9 @@ export const ScrapCommand = cmd({
|
||||||
builder: (yargs) =>
|
builder: (yargs) =>
|
||||||
yargs.positional("file", { type: "string", demandOption: true }),
|
yargs.positional("file", { type: "string", demandOption: true }),
|
||||||
async handler(args) {
|
async handler(args) {
|
||||||
await App.provide(
|
await App.provide({ cwd: process.cwd() }, async () => {
|
||||||
{ cwd: process.cwd() },
|
await LSP.touchFile(args.file, true)
|
||||||
async () => {
|
console.log(await LSP.diagnostics())
|
||||||
await LSP.touchFile(args.file, true)
|
})
|
||||||
console.log(await LSP.diagnostics())
|
|
||||||
},
|
|
||||||
)
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
import { App } from '../app/app'
|
import { App } from "../app/app"
|
||||||
import { BunProc } from '../bun'
|
import { BunProc } from "../bun"
|
||||||
import { Config } from '../config/config'
|
import { Config } from "../config/config"
|
||||||
import { Log } from '../util/log'
|
import { Log } from "../util/log"
|
||||||
import path from 'path'
|
import path from "path"
|
||||||
|
|
||||||
export namespace Format {
|
export namespace Format {
|
||||||
const log = Log.create({ service: 'format' })
|
const log = Log.create({ service: "format" })
|
||||||
|
|
||||||
const state = App.state('format', async () => {
|
const state = App.state("format", async () => {
|
||||||
const hooks: Record<string, Hook[]> = {}
|
const hooks: Record<string, Hook[]> = {}
|
||||||
for (const item of FORMATTERS) {
|
for (const item of FORMATTERS) {
|
||||||
if (await item.enabled()) {
|
if (await item.enabled()) {
|
||||||
|
@ -42,22 +42,22 @@ export namespace Format {
|
||||||
})
|
})
|
||||||
|
|
||||||
export async function run(file: string) {
|
export async function run(file: string) {
|
||||||
log.info('formatting', { file })
|
log.info("formatting", { file })
|
||||||
const { hooks } = await state()
|
const { hooks } = await state()
|
||||||
const ext = path.extname(file)
|
const ext = path.extname(file)
|
||||||
const match = hooks[ext]
|
const match = hooks[ext]
|
||||||
if (!match) return
|
if (!match) return
|
||||||
|
|
||||||
for (const item of match) {
|
for (const item of match) {
|
||||||
log.info('running', { command: item.command })
|
log.info("running", { command: item.command })
|
||||||
const proc = Bun.spawn({
|
const proc = Bun.spawn({
|
||||||
cmd: item.command.map((x) => x.replace('$FILE', file)),
|
cmd: item.command.map((x) => x.replace("$FILE", file)),
|
||||||
cwd: App.info().path.cwd,
|
cwd: App.info().path.cwd,
|
||||||
env: item.environment,
|
env: item.environment,
|
||||||
})
|
})
|
||||||
const exit = await proc.exited
|
const exit = await proc.exited
|
||||||
if (exit !== 0)
|
if (exit !== 0)
|
||||||
log.error('failed', {
|
log.error("failed", {
|
||||||
command: item.command,
|
command: item.command,
|
||||||
...item.environment,
|
...item.environment,
|
||||||
})
|
})
|
||||||
|
@ -79,58 +79,58 @@ export namespace Format {
|
||||||
|
|
||||||
const FORMATTERS: Native[] = [
|
const FORMATTERS: Native[] = [
|
||||||
{
|
{
|
||||||
name: 'prettier',
|
name: "prettier",
|
||||||
extensions: [
|
command: [BunProc.which(), "run", "prettier", "--write", "$FILE"],
|
||||||
'.js',
|
|
||||||
'.jsx',
|
|
||||||
'.mjs',
|
|
||||||
'.cjs',
|
|
||||||
'.ts',
|
|
||||||
'.tsx',
|
|
||||||
'.mts',
|
|
||||||
'.cts',
|
|
||||||
'.html',
|
|
||||||
'.htm',
|
|
||||||
'.css',
|
|
||||||
'.scss',
|
|
||||||
'.sass',
|
|
||||||
'.less',
|
|
||||||
'.vue',
|
|
||||||
'.svelte',
|
|
||||||
'.json',
|
|
||||||
'.jsonc',
|
|
||||||
'.yaml',
|
|
||||||
'.yml',
|
|
||||||
'.toml',
|
|
||||||
'.xml',
|
|
||||||
'.md',
|
|
||||||
'.mdx',
|
|
||||||
'.php',
|
|
||||||
'.rb',
|
|
||||||
'.java',
|
|
||||||
'.go',
|
|
||||||
'.rs',
|
|
||||||
'.swift',
|
|
||||||
'.kt',
|
|
||||||
'.kts',
|
|
||||||
'.sol',
|
|
||||||
'.graphql',
|
|
||||||
'.gql',
|
|
||||||
],
|
|
||||||
command: [BunProc.which(), 'run', 'prettier', '--write', '$FILE'],
|
|
||||||
environment: {
|
environment: {
|
||||||
BUN_BE_BUN: '1',
|
BUN_BE_BUN: "1",
|
||||||
},
|
},
|
||||||
|
extensions: [
|
||||||
|
".js",
|
||||||
|
".jsx",
|
||||||
|
".mjs",
|
||||||
|
".cjs",
|
||||||
|
".ts",
|
||||||
|
".tsx",
|
||||||
|
".mts",
|
||||||
|
".cts",
|
||||||
|
".html",
|
||||||
|
".htm",
|
||||||
|
".css",
|
||||||
|
".scss",
|
||||||
|
".sass",
|
||||||
|
".less",
|
||||||
|
".vue",
|
||||||
|
".svelte",
|
||||||
|
".json",
|
||||||
|
".jsonc",
|
||||||
|
".yaml",
|
||||||
|
".yml",
|
||||||
|
".toml",
|
||||||
|
".xml",
|
||||||
|
".md",
|
||||||
|
".mdx",
|
||||||
|
".php",
|
||||||
|
".rb",
|
||||||
|
".java",
|
||||||
|
".go",
|
||||||
|
".rs",
|
||||||
|
".swift",
|
||||||
|
".kt",
|
||||||
|
".kts",
|
||||||
|
".sol",
|
||||||
|
".graphql",
|
||||||
|
".gql",
|
||||||
|
],
|
||||||
async enabled() {
|
async enabled() {
|
||||||
try {
|
try {
|
||||||
const proc = Bun.spawn({
|
const proc = Bun.spawn({
|
||||||
cmd: [BunProc.which(), 'run', 'prettier', '--version'],
|
cmd: [BunProc.which(), "run", "prettier", "--version"],
|
||||||
cwd: App.info().path.cwd,
|
cwd: App.info().path.cwd,
|
||||||
env: {
|
env: {
|
||||||
BUN_BE_BUN: '1',
|
BUN_BE_BUN: "1",
|
||||||
},
|
},
|
||||||
stdout: 'ignore',
|
stdout: "ignore",
|
||||||
stderr: 'ignore',
|
stderr: "ignore",
|
||||||
})
|
})
|
||||||
const exit = await proc.exited
|
const exit = await proc.exited
|
||||||
return exit === 0
|
return exit === 0
|
||||||
|
|
|
@ -80,6 +80,7 @@ export const EditTool = Tool.define({
|
||||||
)
|
)
|
||||||
await file.write(contentNew)
|
await file.write(contentNew)
|
||||||
await Format.run(filepath)
|
await Format.run(filepath)
|
||||||
|
contentNew = await file.text()
|
||||||
})()
|
})()
|
||||||
|
|
||||||
const diff = trimDiff(
|
const diff = trimDiff(
|
||||||
|
|
|
@ -8,4 +8,3 @@ export function lazy<T>(fn: () => T) {
|
||||||
return value as T
|
return value as T
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,10 @@ export namespace Log {
|
||||||
await fs.mkdir(dir, { recursive: true })
|
await fs.mkdir(dir, { recursive: true })
|
||||||
cleanup(dir)
|
cleanup(dir)
|
||||||
if (options.print) return
|
if (options.print) return
|
||||||
logpath = path.join(dir, new Date().toISOString().split(".")[0].replace(/:/g, "") + ".log")
|
logpath = path.join(
|
||||||
|
dir,
|
||||||
|
new Date().toISOString().split(".")[0].replace(/:/g, "") + ".log",
|
||||||
|
)
|
||||||
const logfile = Bun.file(logpath)
|
const logfile = Bun.file(logpath)
|
||||||
await fs.truncate(logpath).catch(() => {})
|
await fs.truncate(logpath).catch(() => {})
|
||||||
const writer = logfile.writer()
|
const writer = logfile.writer()
|
||||||
|
|
|
@ -316,13 +316,13 @@ const testCases: TestCase[] = [
|
||||||
// WhitespaceNormalizedReplacer - test regex special characters that could cause errors
|
// WhitespaceNormalizedReplacer - test regex special characters that could cause errors
|
||||||
{
|
{
|
||||||
content: 'const pattern = "test[123]";',
|
content: 'const pattern = "test[123]";',
|
||||||
find: 'test[123]',
|
find: "test[123]",
|
||||||
replace: 'test[456]',
|
replace: "test[456]",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
content: 'const regex = "^start.*end$";',
|
content: 'const regex = "^start.*end$";',
|
||||||
find: '^start.*end$',
|
find: "^start.*end$",
|
||||||
replace: '^begin.*finish$',
|
replace: "^begin.*finish$",
|
||||||
},
|
},
|
||||||
|
|
||||||
// EscapeNormalizedReplacer - test single backslash vs double backslash
|
// EscapeNormalizedReplacer - test single backslash vs double backslash
|
||||||
|
|
|
@ -78,4 +78,3 @@
|
||||||
"syntaxPunctuation": "darkFg"
|
"syntaxPunctuation": "darkFg"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -110,4 +110,3 @@
|
||||||
"syntaxPunctuation": { "dark": "darkText", "light": "lightText" }
|
"syntaxPunctuation": { "dark": "darkText", "light": "lightText" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -239,4 +239,3 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -243,4 +243,3 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -241,4 +241,3 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -115,11 +115,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID", "providerID", "modelID"]
|
||||||
"sessionID",
|
|
||||||
"providerID",
|
|
||||||
"modelID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -149,12 +145,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["root", "data", "cwd", "config"]
|
||||||
"root",
|
|
||||||
"data",
|
|
||||||
"cwd",
|
|
||||||
"config"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -221,9 +212,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID"]
|
||||||
"sessionID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -257,9 +246,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID"]
|
||||||
"sessionID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -296,9 +283,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID"]
|
||||||
"sessionID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -354,9 +339,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID"]
|
||||||
"sessionID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -390,9 +373,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID"]
|
||||||
"sessionID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -432,11 +413,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID", "providerID", "modelID"]
|
||||||
"sessionID",
|
|
||||||
"providerID",
|
|
||||||
"modelID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -482,12 +459,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["sessionID", "providerID", "modelID", "parts"]
|
||||||
"sessionID",
|
|
||||||
"providerID",
|
|
||||||
"modelID",
|
|
||||||
"parts"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -517,10 +489,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["providers", "default"]
|
||||||
"providers",
|
|
||||||
"default"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -561,9 +530,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["query"]
|
||||||
"query"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -652,15 +619,10 @@
|
||||||
},
|
},
|
||||||
"content": {}
|
"content": {}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["key"]
|
||||||
"key"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.installation.updated": {
|
"Event.installation.updated": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -676,15 +638,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["version"]
|
||||||
"version"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.lsp.client.diagnostics": {
|
"Event.lsp.client.diagnostics": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -703,16 +660,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["serverID", "path"]
|
||||||
"serverID",
|
|
||||||
"path"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.permission.updated": {
|
"Event.permission.updated": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -725,10 +676,7 @@
|
||||||
"$ref": "#/components/schemas/permission.info"
|
"$ref": "#/components/schemas/permission.info"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"permission.info": {
|
"permission.info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -753,18 +701,10 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["created"]
|
||||||
"created"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["id", "sessionID", "title", "metadata", "time"]
|
||||||
"id",
|
|
||||||
"sessionID",
|
|
||||||
"title",
|
|
||||||
"metadata",
|
|
||||||
"time"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.message.updated": {
|
"Event.message.updated": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -780,15 +720,10 @@
|
||||||
"$ref": "#/components/schemas/Message.Info"
|
"$ref": "#/components/schemas/Message.Info"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["info"]
|
||||||
"info"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Info": {
|
"Message.Info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -798,10 +733,7 @@
|
||||||
},
|
},
|
||||||
"role": {
|
"role": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
"enum": [
|
"enum": ["user", "assistant"]
|
||||||
"user",
|
|
||||||
"assistant"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"parts": {
|
"parts": {
|
||||||
"type": "array",
|
"type": "array",
|
||||||
|
@ -813,12 +745,7 @@
|
||||||
"$ref": "#/components/schemas/Message.Metadata"
|
"$ref": "#/components/schemas/Message.Metadata"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["id", "role", "parts", "metadata"]
|
||||||
"id",
|
|
||||||
"role",
|
|
||||||
"parts",
|
|
||||||
"metadata"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part": {
|
"Message.Part": {
|
||||||
"oneOf": [
|
"oneOf": [
|
||||||
|
@ -864,10 +791,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "text"]
|
||||||
"type",
|
|
||||||
"text"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part.Reasoning": {
|
"Message.Part.Reasoning": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -884,10 +808,7 @@
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "text"]
|
||||||
"type",
|
|
||||||
"text"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part.ToolInvocation": {
|
"Message.Part.ToolInvocation": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -900,10 +821,7 @@
|
||||||
"$ref": "#/components/schemas/Message.ToolInvocation"
|
"$ref": "#/components/schemas/Message.ToolInvocation"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "toolInvocation"]
|
||||||
"type",
|
|
||||||
"toolInvocation"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.ToolInvocation": {
|
"Message.ToolInvocation": {
|
||||||
"oneOf": [
|
"oneOf": [
|
||||||
|
@ -944,11 +862,7 @@
|
||||||
},
|
},
|
||||||
"args": {}
|
"args": {}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["state", "toolCallId", "toolName"]
|
||||||
"state",
|
|
||||||
"toolCallId",
|
|
||||||
"toolName"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.ToolInvocation.ToolPartialCall": {
|
"Message.ToolInvocation.ToolPartialCall": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -968,11 +882,7 @@
|
||||||
},
|
},
|
||||||
"args": {}
|
"args": {}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["state", "toolCallId", "toolName"]
|
||||||
"state",
|
|
||||||
"toolCallId",
|
|
||||||
"toolName"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.ToolInvocation.ToolResult": {
|
"Message.ToolInvocation.ToolResult": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -995,12 +905,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["state", "toolCallId", "toolName", "result"]
|
||||||
"state",
|
|
||||||
"toolCallId",
|
|
||||||
"toolName",
|
|
||||||
"result"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part.SourceUrl": {
|
"Message.Part.SourceUrl": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1023,11 +928,7 @@
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "sourceId", "url"]
|
||||||
"type",
|
|
||||||
"sourceId",
|
|
||||||
"url"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part.File": {
|
"Message.Part.File": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1046,11 +947,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "mediaType", "url"]
|
||||||
"type",
|
|
||||||
"mediaType",
|
|
||||||
"url"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Part.StepStart": {
|
"Message.Part.StepStart": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1060,9 +957,7 @@
|
||||||
"const": "step-start"
|
"const": "step-start"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type"]
|
||||||
"type"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Message.Metadata": {
|
"Message.Metadata": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1077,9 +972,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["created"]
|
||||||
"created"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"error": {
|
"error": {
|
||||||
"oneOf": [
|
"oneOf": [
|
||||||
|
@ -1119,16 +1012,10 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["start", "end"]
|
||||||
"start",
|
|
||||||
"end"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["title", "time"],
|
||||||
"title",
|
|
||||||
"time"
|
|
||||||
],
|
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -1157,10 +1044,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["cwd", "root"]
|
||||||
"cwd",
|
|
||||||
"root"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"cost": {
|
"cost": {
|
||||||
"type": "number"
|
"type": "number"
|
||||||
|
@ -1190,18 +1074,10 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["read", "write"]
|
||||||
"read",
|
|
||||||
"write"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["input", "output", "reasoning", "cache"]
|
||||||
"input",
|
|
||||||
"output",
|
|
||||||
"reasoning",
|
|
||||||
"cache"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
|
@ -1214,11 +1090,7 @@
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["time", "sessionID", "tool"]
|
||||||
"time",
|
|
||||||
"sessionID",
|
|
||||||
"tool"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"ProviderAuthError": {
|
"ProviderAuthError": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1237,16 +1109,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["providerID", "message"]
|
||||||
"providerID",
|
|
||||||
"message"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["name", "data"]
|
||||||
"name",
|
|
||||||
"data"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"UnknownError": {
|
"UnknownError": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1262,15 +1128,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["message"]
|
||||||
"message"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["name", "data"]
|
||||||
"name",
|
|
||||||
"data"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.message.part.updated": {
|
"Event.message.part.updated": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1292,17 +1153,10 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["part", "sessionID", "messageID"]
|
||||||
"part",
|
|
||||||
"sessionID",
|
|
||||||
"messageID"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.session.updated": {
|
"Event.session.updated": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1318,15 +1172,10 @@
|
||||||
"$ref": "#/components/schemas/session.info"
|
"$ref": "#/components/schemas/session.info"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["info"]
|
||||||
"info"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"session.info": {
|
"session.info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1346,9 +1195,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["url"]
|
||||||
"url"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"title": {
|
"title": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
|
@ -1366,18 +1213,10 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["created", "updated"]
|
||||||
"created",
|
|
||||||
"updated"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["id", "title", "version", "time"]
|
||||||
"id",
|
|
||||||
"title",
|
|
||||||
"version",
|
|
||||||
"time"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.session.deleted": {
|
"Event.session.deleted": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1393,15 +1232,10 @@
|
||||||
"$ref": "#/components/schemas/session.info"
|
"$ref": "#/components/schemas/session.info"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["info"]
|
||||||
"info"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Event.session.error": {
|
"Event.session.error": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1433,10 +1267,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "properties"]
|
||||||
"type",
|
|
||||||
"properties"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"App.Info": {
|
"App.Info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1466,13 +1297,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["config", "data", "root", "cwd", "state"]
|
||||||
"config",
|
|
||||||
"data",
|
|
||||||
"root",
|
|
||||||
"cwd",
|
|
||||||
"state"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"time": {
|
"time": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1483,12 +1308,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["user", "git", "path", "time"]
|
||||||
"user",
|
|
||||||
"git",
|
|
||||||
"path",
|
|
||||||
"time"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Config.Info": {
|
"Config.Info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1583,10 +1403,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["input", "output"]
|
||||||
"input",
|
|
||||||
"output"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"limit": {
|
"limit": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1598,10 +1415,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["context", "output"]
|
||||||
"context",
|
|
||||||
"output"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
|
@ -1618,9 +1432,7 @@
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["models"]
|
||||||
"models"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"description": "Custom provider configurations and model overrides"
|
"description": "Custom provider configurations and model overrides"
|
||||||
},
|
},
|
||||||
|
@ -1790,12 +1602,7 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["name", "env", "id", "models"]
|
||||||
"name",
|
|
||||||
"env",
|
|
||||||
"id",
|
|
||||||
"models"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"Model.Info": {
|
"Model.Info": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1831,10 +1638,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["input", "output"]
|
||||||
"input",
|
|
||||||
"output"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"limit": {
|
"limit": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1846,10 +1650,7 @@
|
||||||
"type": "number"
|
"type": "number"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["context", "output"]
|
||||||
"context",
|
|
||||||
"output"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"id": {
|
"id": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
|
@ -1894,10 +1695,7 @@
|
||||||
"description": "Environment variables to set when running the MCP server"
|
"description": "Environment variables to set when running the MCP server"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "command"],
|
||||||
"type",
|
|
||||||
"command"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
"Config.McpRemote": {
|
"Config.McpRemote": {
|
||||||
|
@ -1913,10 +1711,7 @@
|
||||||
"description": "URL of the remote MCP server"
|
"description": "URL of the remote MCP server"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["type", "url"],
|
||||||
"type",
|
|
||||||
"url"
|
|
||||||
],
|
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
},
|
},
|
||||||
"Error": {
|
"Error": {
|
||||||
|
@ -1927,9 +1722,7 @@
|
||||||
"additionalProperties": {}
|
"additionalProperties": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["data"]
|
||||||
"data"
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"InstallationInfo": {
|
"InstallationInfo": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
|
@ -1941,10 +1734,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": ["version", "latest"]
|
||||||
"version",
|
|
||||||
"latest"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -32,9 +32,7 @@ export default defineConfig({
|
||||||
starlight({
|
starlight({
|
||||||
title: "opencode",
|
title: "opencode",
|
||||||
expressiveCode: { themes: ["github-light", "github-dark"] },
|
expressiveCode: { themes: ["github-light", "github-dark"] },
|
||||||
social: [
|
social: [{ icon: "github", label: "GitHub", href: config.github }],
|
||||||
{ icon: "github", label: "GitHub", href: config.github },
|
|
||||||
],
|
|
||||||
head: [
|
head: [
|
||||||
{
|
{
|
||||||
tag: "link",
|
tag: "link",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue