Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .dependency-cruiser.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ module.exports = {
"This is an orphan module - it's likely not used (anymore?). Either use it or " +
"remove it. If it's logical this module is an orphan (i.e. it's a config file), " +
'add an exception for it in your dependency-cruiser configuration. By default ' +
'this rule does not scrutinize dot-files (e.g. .eslintrc.js), TypeScript declaration ' +
'this rule does not scrutinize dot-files (e.g. .oxlintrc.json), TypeScript declaration ' +
'files (.d.ts), tsconfig.json and some of the babel and webpack configs.',
severity: 'warn',
from: {
Expand Down
7 changes: 1 addition & 6 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,7 @@ updates:
- dependency-name: '@next/third-parties'
# Stay on Next.js v15 for now
versions: ['>=16.0.0']
- dependency-name: '@next/eslint-plugin-next'
# Stay on Next.js v15 for now
versions: ['>=16.0.0']
- dependency-name: 'eslint-config-next'
# Stay on Next.js v15 for now
versions: ['>=16.0.0']

groups:
npm-dependencies:
# Group all npm dependencies together
Expand Down
12 changes: 0 additions & 12 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -309,9 +309,6 @@ jobs:
- name: Typecheck (cloud-agent)
run: pnpm --filter cloud-agent typecheck

- name: Lint (cloud-agent)
run: pnpm --filter cloud-agent lint

- name: Run cloud-agent tests
run: pnpm --filter cloud-agent test:all

Expand Down Expand Up @@ -352,9 +349,6 @@ jobs:
- name: Typecheck (cloud-agent-next)
run: pnpm --filter cloud-agent-next typecheck

- name: Lint (cloud-agent-next)
run: pnpm --filter cloud-agent-next lint

- name: Run cloud-agent-next tests
run: pnpm --filter cloud-agent-next test:all

Expand Down Expand Up @@ -385,9 +379,6 @@ jobs:
- name: Typecheck (webhook-agent-ingest)
run: pnpm --filter cloudflare-webhook-agent-ingest typecheck

- name: Lint (webhook-agent-ingest)
run: pnpm --filter cloudflare-webhook-agent-ingest lint

- name: Run webhook-agent-ingest tests
run: pnpm --filter cloudflare-webhook-agent-ingest test

Expand Down Expand Up @@ -448,9 +439,6 @@ jobs:
- name: Typecheck (kiloclaw)
run: pnpm --filter kiloclaw typecheck

- name: Lint (kiloclaw)
run: pnpm --filter kiloclaw lint

- name: Run kiloclaw tests
run: pnpm --filter kiloclaw test

Expand Down
3 changes: 0 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,6 @@ yarn-error.log*
*.tsbuildinfo
next-env.d.ts

# eslint cache
.eslintcache

# kdiff3
*.orig
dev-debug-request-logs/*
Expand Down
16 changes: 4 additions & 12 deletions .husky/pre-push
Original file line number Diff line number Diff line change
@@ -1,23 +1,15 @@
pnpm format:check &
pid_format=$!

pnpm lint:oxlint &
pid_oxlint=$!
scripts/lint-all.sh &
pid_lint=$!

pnpm lint:eslint:fallback &
pid_eslint=$!

pnpm -r --filter '!kilocode-backend' --filter '!storybook' run lint &
pid_workspace_lint=$!

pnpm typecheck &
scripts/typecheck-all.sh --changes-only &
pid_typecheck=$!

failed=""
wait $pid_format || failed="$failed format:check"
wait $pid_oxlint || failed="$failed lint:oxlint"
wait $pid_eslint || failed="$failed lint:eslint:fallback"
wait $pid_workspace_lint || failed="$failed workspace-lint"
wait $pid_lint || failed="$failed lint"
wait $pid_typecheck || failed="$failed typecheck"

if [ -n "$failed" ]; then
Expand Down
48 changes: 46 additions & 2 deletions .oxlintrc.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"$schema": "./node_modules/oxlint/configuration_schema.json",
"plugins": ["oxc", "typescript", "unicorn", "nextjs"],
"plugins": ["oxc", "typescript", "unicorn", "nextjs", "import"],
"jsPlugins": [{ "name": "drizzle", "specifier": "./oxlint-plugin-drizzle.js" }],
"options": {
"typeAware": true
},
Expand Down Expand Up @@ -116,7 +117,9 @@
"@next/next/no-document-import-in-page": "error",
"@next/next/no-duplicate-head": "error",
"@next/next/no-head-import-in-document": "error",
"@next/next/no-script-component-in-head": "error"
"@next/next/no-script-component-in-head": "error",
"drizzle/enforce-delete-with-where": ["error", { "drizzleObjectName": ["db", "ctx.db"] }],
"drizzle/enforce-update-with-where": ["error", { "drizzleObjectName": ["db", "ctx.db"] }]
},
"overrides": [
{
Expand Down Expand Up @@ -156,6 +159,47 @@
"rules": {
"@typescript-eslint/no-non-null-assertion": "off"
}
},
{
"files": [
"cloud-agent/**/*.ts",
"cloud-agent-next/**/*.ts",
"cloudflare-*/**/*.ts",
"kiloclaw/**/*.ts",
"packages/**/*.ts"
],
"rules": {
"@typescript-eslint/no-empty-object-type": "error",
"@typescript-eslint/await-thenable": "error",
"@typescript-eslint/no-base-to-string": "error",
"@typescript-eslint/no-duplicate-type-constituents": "error",
"@typescript-eslint/no-for-in-array": "error",
"@typescript-eslint/no-implied-eval": "error",
"@typescript-eslint/no-redundant-type-constituents": "error",
"@typescript-eslint/no-unnecessary-type-assertion": "error",
"@typescript-eslint/no-unsafe-argument": "error",
"@typescript-eslint/no-unsafe-assignment": "error",
"@typescript-eslint/no-unsafe-call": "error",
"@typescript-eslint/no-unsafe-enum-comparison": "error",
"@typescript-eslint/no-unsafe-member-access": "error",
"@typescript-eslint/no-unsafe-return": "error",
"@typescript-eslint/no-unsafe-unary-minus": "error",
"@typescript-eslint/restrict-plus-operands": "error",
"@typescript-eslint/restrict-template-expressions": "error",
"@typescript-eslint/unbound-method": "error"
}
},
{
"files": [
"cloud-agent/src/session/queries/*.ts",
"cloud-agent-next/src/session/queries/*.ts",
"cloudflare-gastown/**/*.ts",
"cloudflare-webhook-agent-ingest/**/*.ts",
"kiloclaw/**/*.ts"
],
"rules": {
"@typescript-eslint/restrict-template-expressions": "off"
}
}
]
}
7 changes: 1 addition & 6 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
{
"recommendations": [
"dbaeumer.vscode-eslint",
"oxc.oxc-vscode",
"orta.vscode-jest",
"bradlc.vscode-tailwindcss"
]
"recommendations": ["oxc.oxc-vscode", "orta.vscode-jest", "bradlc.vscode-tailwindcss"]
}
4 changes: 0 additions & 4 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
{
"eslint.codeActionsOnSave.mode": "all",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"typescript.preferences.importModuleSpecifier": "non-relative",
"editor.defaultFormatter": "oxc.oxc-vscode",
"editor.formatOnSave": true,
Expand Down
3 changes: 1 addition & 2 deletions cloud-agent-next/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,7 @@ Cloudflare Worker that powers Kilocode Cloud Agents. It exposes a tRPC API for s

### Code Quality

- `pnpm run lint` - ESLint
- `pnpm run lint:fix` - ESLint with auto-fix
- `pnpm run lint` - oxlint
- `pnpm run format` - oxfmt write (src only)
- `pnpm run format:check` - oxfmt check (src only)
- `pnpm run typecheck` - TypeScript (tsgo) + wrapper typecheck
Expand Down
17 changes: 0 additions & 17 deletions cloud-agent-next/eslint.config.mjs

This file was deleted.

9 changes: 2 additions & 7 deletions cloud-agent-next/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,7 @@
"prestart": "pnpm run build:wrapper",
"start": "wrangler dev",
"types": "wrangler types",
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint:fallback",
"lint:oxlint": "pnpm -w exec oxlint --config .oxlintrc.json cloud-agent-next/src cloud-agent-next/wrapper/src",
"lint:eslint:fallback": "eslint --config eslint.config.mjs --cache 'src/**/*.ts' 'wrapper/src/**/*.ts'",
"lint:fix": "eslint --config eslint.config.mjs --cache --fix 'src/**/*.ts' 'wrapper/src/**/*.ts'",
"lint": "pnpm -w exec oxlint --config .oxlintrc.json cloud-agent-next/src cloud-agent-next/wrapper/src",
"format": "oxfmt src",
"format:check": "oxfmt --list-different src",
"build:wrapper": "bun run --cwd wrapper build",
Expand All @@ -26,7 +23,7 @@
"test:integration": "vitest run --config vitest.workers.config.ts",
"test:integration:watch": "vitest --config vitest.workers.config.ts",
"test:all": "vitest run && vitest run --config vitest.workers.config.ts",
"typecheck": "tsgo --noEmit --incremental false && pnpm -C wrapper run typecheck"
"typecheck": "tsgo --noEmit && pnpm -C wrapper run typecheck"
},
"dependencies": {
"@cloudflare/sandbox": "0.7.13",
Expand All @@ -46,13 +43,11 @@
"devDependencies": {
"@cloudflare/containers": "0.1.1",
"@cloudflare/vitest-pool-workers": "^0.12.21",
"@kilocode/eslint-config": "workspace:*",
"@types/jsonwebtoken": "catalog:",
"@types/node": "^22.19.15",
"@typescript/native-preview": "catalog:",
"@vitest/ui": "^3.2.4",
"drizzle-kit": "catalog:",
"eslint": "catalog:",
"typescript": "catalog:",
"vitest": "^3.2.4",
"wrangler": "catalog:"
Expand Down
2 changes: 1 addition & 1 deletion cloud-agent-next/wrapper/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"type": "module",
"scripts": {
"build": "bun run build.ts",
"typecheck": "tsgo --noEmit --incremental false"
"typecheck": "tsgo --noEmit"
},
"dependencies": {
"@kilocode/sdk": "7.0.50"
Expand Down
17 changes: 0 additions & 17 deletions cloud-agent/eslint.config.mjs

This file was deleted.

9 changes: 2 additions & 7 deletions cloud-agent/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,7 @@
"prestart": "pnpm run build:wrapper",
"start": "wrangler dev",
"types": "wrangler types",
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint:fallback",
"lint:oxlint": "pnpm -w exec oxlint --config .oxlintrc.json cloud-agent/src cloud-agent/wrapper/src",
"lint:eslint:fallback": "eslint --config eslint.config.mjs --cache 'src/**/*.ts' 'wrapper/src/**/*.ts'",
"lint:fix": "eslint --config eslint.config.mjs --cache --fix 'src/**/*.ts' 'wrapper/src/**/*.ts'",
"lint": "pnpm -w exec oxlint --config .oxlintrc.json cloud-agent/src cloud-agent/wrapper/src",
"format": "oxfmt src",
"format:check": "oxfmt --list-different src",
"build:wrapper": "bun run --cwd wrapper build",
Expand All @@ -26,7 +23,7 @@
"test:integration": "vitest run --config vitest.workers.config.ts",
"test:integration:watch": "vitest --config vitest.workers.config.ts",
"test:all": "vitest run && vitest run --config vitest.workers.config.ts",
"typecheck": "tsgo --noEmit --incremental false && pnpm -C wrapper run typecheck"
"typecheck": "tsgo --noEmit && pnpm -C wrapper run typecheck"
},
"dependencies": {
"@cloudflare/sandbox": "0.6.7",
Expand All @@ -43,13 +40,11 @@
"devDependencies": {
"@cloudflare/vitest-pool-workers": "^0.12.21",
"@cloudflare/workers-types": "catalog:",
"@kilocode/eslint-config": "workspace:*",
"@types/jsonwebtoken": "catalog:",
"@types/node": "^22.19.15",
"@typescript/native-preview": "catalog:",
"@vitest/ui": "^3.2.4",
"drizzle-kit": "catalog:",
"eslint": "catalog:",
"typescript": "catalog:",
"vitest": "^3.2.4",
"wrangler": "catalog:"
Expand Down
2 changes: 1 addition & 1 deletion cloud-agent/wrapper/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"type": "module",
"scripts": {
"build": "bun run build.ts",
"typecheck": "tsgo --noEmit --incremental false"
"typecheck": "tsgo --noEmit"
},
"devDependencies": {
"@types/bun": "latest",
Expand Down
8 changes: 0 additions & 8 deletions cloudflare-ai-attribution/eslint.config.mjs

This file was deleted.

8 changes: 2 additions & 6 deletions cloudflare-ai-attribution/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,8 @@
"scripts": {
"dev": "wrangler dev --env dev",
"deploy": "wrangler deploy",
"typecheck": "tsgo --noEmit --incremental false",
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint:fallback",
"lint:oxlint": "pnpm -w exec oxlint --config .oxlintrc.json cloudflare-ai-attribution/src",
"lint:eslint:fallback": "eslint --config eslint.config.mjs --cache 'src/**/*.ts'",
"typecheck": "tsgo --noEmit",
"lint": "pnpm -w exec oxlint --config .oxlintrc.json cloudflare-ai-attribution/src",
"test": "jest"
},
"keywords": [
Expand All @@ -21,11 +19,9 @@
"author": "Kilo Code",
"license": "UNLICENSED",
"devDependencies": {
"@kilocode/eslint-config": "workspace:*",
"@types/jest": "^29.5.14",
"@typescript/native-preview": "catalog:",
"drizzle-kit": "catalog:",
"eslint": "catalog:",
"jest": "^29.7.0",
"typescript": "catalog:",
"wrangler": "catalog:"
Expand Down
8 changes: 0 additions & 8 deletions cloudflare-app-builder/eslint.config.mjs

This file was deleted.

8 changes: 2 additions & 6 deletions cloudflare-app-builder/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@
"dev": "wrangler dev",
"deploy": "wrangler deploy",
"cf-typegen": "wrangler types --env-interface CloudflareEnv worker-configuration.d.ts",
"typecheck": "tsgo --noEmit --incremental false",
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint:fallback",
"lint:oxlint": "pnpm -w exec oxlint --config .oxlintrc.json cloudflare-app-builder/src",
"lint:eslint:fallback": "eslint --config eslint.config.mjs --cache 'src/**/*.ts'",
"typecheck": "tsgo --noEmit",
"lint": "pnpm -w exec oxlint --config .oxlintrc.json cloudflare-app-builder/src",
"test": "vitest run",
"test:git": "tsx src/_integration_tests/test-git-integration.ts",
"test:git-head": "tsx src/_integration_tests/test-git-head-and-history.ts",
Expand All @@ -29,12 +27,10 @@
"@cloudflare/containers": "0.1.1",
"@cloudflare/sandbox": "0.7.13",
"@cloudflare/workers-types": "catalog:",
"@kilocode/eslint-config": "workspace:*",
"@types/jsonwebtoken": "catalog:",
"@types/node": "^22.19.15",
"@typescript/native-preview": "catalog:",
"drizzle-kit": "catalog:",
"eslint": "catalog:",
"tsx": "^4.21.0",
"typescript": "catalog:",
"vitest": "^4.1.0",
Expand Down
8 changes: 0 additions & 8 deletions cloudflare-auto-fix-infra/eslint.config.mjs

This file was deleted.

Loading
Loading