diff --git a/.opencode/tools/tea-issue-create.ts b/.opencode/tools/tea-issue-create.ts index bea0806..e80bf62 100644 --- a/.opencode/tools/tea-issue-create.ts +++ b/.opencode/tools/tea-issue-create.ts @@ -1,4 +1,5 @@ import { tool } from "@opencode-ai/plugin" +import { $ } from "bun" export default tool({ description: "Create a new issue in the GitHub repository using tea CLI", @@ -7,7 +8,7 @@ export default tool({ description: tool.schema.string().optional().describe("Issue description (supports markdown)"), }, async execute(args) { - const result = await Bun.$`tea issues create -t ${args.title} -d ${args.description}`.text() + const result = await $`tea issues create -t ${args.title} -d ${args.description}`.text() return result.trim() }, }) \ No newline at end of file diff --git a/.opencode/tools/tea-issues.ts b/.opencode/tools/tea-issues.ts index 292e384..46a3c71 100644 --- a/.opencode/tools/tea-issues.ts +++ b/.opencode/tools/tea-issues.ts @@ -1,11 +1,11 @@ import { tool } from "@opencode-ai/plugin" -import path from "path" +import { $ } from "bun" export default tool({ description: "List all issues in the project using tea CLI", args: {}, async execute(args, context) { - const result = await Bun.$`tea issues list`.text() + const result = await $`tea issues list`.text() return result.trim() }, }) \ No newline at end of file diff --git a/index.ts b/index.ts new file mode 100644 index 0000000..f67b2c6 --- /dev/null +++ b/index.ts @@ -0,0 +1 @@ +console.log("Hello via Bun!"); \ No newline at end of file diff --git a/package.json b/package.json new file mode 100644 index 0000000..9b45f71 --- /dev/null +++ b/package.json @@ -0,0 +1,12 @@ +{ + "name": "architecture", + "module": "index.ts", + "type": "module", + "private": true, + "devDependencies": { + "@types/bun": "latest" + }, + "peerDependencies": { + "typescript": "^5" + } +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 0000000..bfa0fea --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,29 @@ +{ + "compilerOptions": { + // Environment setup & latest features + "lib": ["ESNext"], + "target": "ESNext", + "module": "Preserve", + "moduleDetection": "force", + "jsx": "react-jsx", + "allowJs": true, + + // Bundler mode + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": true, + + // Best practices + "strict": true, + "skipLibCheck": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedIndexedAccess": true, + "noImplicitOverride": true, + + // Some stricter flags (disabled by default) + "noUnusedLocals": false, + "noUnusedParameters": false, + "noPropertyAccessFromIndexSignature": false + } +}