khal-os 1.260405.1 → 1.260405.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,45 @@
1
+ Copyright (c) 2026 KhalOS. All rights reserved.
2
+
3
+ PROPRIETARY SOFTWARE LICENSE
4
+
5
+ This software and associated documentation files (the "Software") are the
6
+ exclusive property of KhalOS. The Software is protected by copyright laws
7
+ and international treaty provisions.
8
+
9
+ 1. GRANT OF LICENSE
10
+ No license is granted under this agreement. Access to this repository does
11
+ not constitute a license to use, copy, modify, or distribute the Software.
12
+
13
+ 2. RESTRICTIONS
14
+ You may not, without prior written authorization from KhalOS:
15
+ a. Copy, reproduce, or duplicate the Software;
16
+ b. Modify, adapt, translate, or create derivative works of the Software;
17
+ c. Distribute, sublicense, lease, rent, loan, or otherwise transfer the
18
+ Software to any third party;
19
+ d. Reverse engineer, disassemble, decompile, or otherwise attempt to
20
+ derive the source code of the Software;
21
+ e. Remove, alter, or obscure any proprietary notices on the Software.
22
+
23
+ 3. CONFIDENTIALITY
24
+ The Software contains trade secrets and proprietary information of KhalOS.
25
+ You agree to maintain the confidentiality of the Software and not to
26
+ disclose it to any third party without prior written consent.
27
+
28
+ 4. OWNERSHIP
29
+ KhalOS retains all right, title, and interest in and to the Software,
30
+ including all intellectual property rights therein.
31
+
32
+ 5. TERMINATION
33
+ Any unauthorized use of the Software will result in immediate termination
34
+ of any implied rights and may result in legal action.
35
+
36
+ 6. NO WARRANTY
37
+ THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
38
+ IMPLIED. KHALOS DISCLAIMS ALL WARRANTIES, INCLUDING BUT NOT LIMITED TO THE
39
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
40
+
41
+ 7. LIMITATION OF LIABILITY
42
+ IN NO EVENT SHALL KHALOS BE LIABLE FOR ANY DAMAGES ARISING OUT OF THE USE
43
+ OR INABILITY TO USE THE SOFTWARE.
44
+
45
+ For licensing inquiries, contact: legal@khal.ai
package/README.md ADDED
@@ -0,0 +1,38 @@
1
+ # Khal
2
+
3
+ A desktop-in-browser OS shell built with Next.js, React, and Tailwind CSS.
4
+
5
+ ## Quick Start
6
+
7
+ ```bash
8
+ pnpm install
9
+ pnpm dev # Next.js on port 1111
10
+ node pty-server.mjs # PTY + WebSocket on port 1112
11
+ ```
12
+
13
+ Open http://localhost:1111 to see the desktop.
14
+
15
+ ## Default Apps
16
+
17
+ - **Terminal** — Full terminal emulator (xterm.js + node-pty)
18
+ - **Settings** — Theme switcher and desktop configuration
19
+ - **Files** — Example stub app (replace with your own)
20
+
21
+ ## Adding a New App
22
+
23
+ 1. Create a component in `src/components/apps/<your-app>/`
24
+ - Must accept `{ windowId: string; meta?: Record<string, unknown> }`
25
+ 2. Register in `src/components/apps/app-registry.ts`
26
+ 3. Add a `DesktopEntry` in `src/stores/desktop-store.ts`
27
+ 4. (Optional) Set default window size in `src/lib/hooks/use-launch-app.ts`
28
+ 5. (Optional) Add a keyboard shortcut in `src/lib/keyboard/defaults.ts`
29
+
30
+ ## Architecture
31
+
32
+ - **Window Manager** — Draggable, resizable windows with snap, minimize, maximize
33
+ - **Taskbar** — App launcher, running apps, system tray, workspace switcher
34
+ - **Workspaces** — Virtual desktops
35
+ - **Keyboard Shortcuts** — Configurable global hotkeys
36
+ - **Notifications** — Toast + notification center
37
+ - **PTY Server** — WebSocket-based terminal backend with session persistence
38
+ - **Theme System** — Light/dark mode via CSS custom properties
package/package.json CHANGED
@@ -1,9 +1,108 @@
1
1
  {
2
2
  "name": "khal-os",
3
- "version": "1.260405.1",
4
- "description": "KhalOS CLI — manage, monitor, and deploy KhalOS instances. Coming soon.",
5
- "bin": {"khal-os": "./cli.js"},
6
- "files": ["cli.js"],
7
- "license": "UNLICENSED",
8
- "repository": {"type": "git", "url": "https://github.com/khal-os/core"}
3
+ "version": "1.260405.3",
4
+ "scripts": {
5
+ "dev": "next dev --port 8888",
6
+ "build": "npx tsx scripts/build-apps.ts && NEXT_PRIVATE_BUILD_WORKER=false next build",
7
+ "start": "next start --port 8888",
8
+ "postinstall": "chmod +x node_modules/.pnpm/node-pty@*/node_modules/node-pty/prebuilds/darwin-*/spawn-helper 2>/dev/null || true",
9
+ "pty-server": "node pty-server.mjs",
10
+ "lint": "biome check .",
11
+ "lint:fix": "biome check --write .",
12
+ "knip": "knip",
13
+ "services": "tsx src/lib/service-loader.ts",
14
+ "tauri": "cd tauri && cargo run",
15
+ "tauri:dev": "cd tauri && cargo tauri dev",
16
+ "tauri:build": "cd tauri && cargo build --release",
17
+ "prepare": "husky"
18
+ },
19
+ "dependencies": {
20
+ "@json-render/core": "^0.7.0",
21
+ "@json-render/react": "^0.7.0",
22
+ "@khal-os/sdk": "^1.0.1",
23
+ "@khal-os/ui": "^1.0.1",
24
+ "@nats-io/jetstream": "^3.3.1",
25
+ "@nats-io/transport-node": "^3.3.1",
26
+ "@number-flow/react": "^0.6.0",
27
+ "@opentelemetry/core": "^2.6.1",
28
+ "@opentelemetry/instrumentation-http": "^0.214.0",
29
+ "@opentelemetry/instrumentation-pg": "^0.66.0",
30
+ "@opentelemetry/instrumentation-runtime-node": "^0.27.0",
31
+ "@opentelemetry/resources": "^2.6.1",
32
+ "@opentelemetry/sdk-metrics": "^2.6.1",
33
+ "@opentelemetry/sdk-node": "^0.214.0",
34
+ "@opentelemetry/semantic-conventions": "^1.40.0",
35
+ "@paper-design/shaders-react": "^0.0.72",
36
+ "@radix-ui/react-context-menu": "^2.2.16",
37
+ "@radix-ui/react-dialog": "^1.1.15",
38
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
39
+ "@radix-ui/react-label": "^2.1.8",
40
+ "@radix-ui/react-separator": "^1.1.8",
41
+ "@radix-ui/react-slot": "^1.2.4",
42
+ "@radix-ui/react-switch": "^1.2.6",
43
+ "@radix-ui/react-tooltip": "^1.2.8",
44
+ "@sentry/nextjs": "^10.39.0",
45
+ "@sinclair/typebox": "^0.34.48",
46
+ "@tauri-apps/api": "^2.10.1",
47
+ "@temporalio/activity": "^1.15.0",
48
+ "@temporalio/client": "^1.15.0",
49
+ "@temporalio/worker": "^1.15.0",
50
+ "@temporalio/workflow": "^1.15.0",
51
+ "@types/archiver": "^7.0.0",
52
+ "@workos-inc/authkit-nextjs": "^2.14.0",
53
+ "@xterm/addon-fit": "^0.11.0",
54
+ "@xterm/addon-webgl": "^0.19.0",
55
+ "@xterm/xterm": "^6.0.0",
56
+ "archiver": "^7.0.1",
57
+ "class-variance-authority": "^0.7.1",
58
+ "clsx": "^2.1.1",
59
+ "cmdk": "^1.1.1",
60
+ "iron-session": "^8.0.4",
61
+ "jose": "^6.1.3",
62
+ "lucide-react": "^0.563.0",
63
+ "motion": "^12.38.0",
64
+ "next": "16.1.6",
65
+ "next-themes": "^0.4.6",
66
+ "node-pty": "^1.1.0",
67
+ "react": "19.2.3",
68
+ "react-dom": "19.2.3",
69
+ "tailwind-merge": "^3.4.0",
70
+ "ulidx": "^2.4.1",
71
+ "uuid": "^13.0.0",
72
+ "ws": "^8.20.0",
73
+ "zod": "^4.3.6",
74
+ "zustand": "^5.0.11"
75
+ },
76
+ "devDependencies": {
77
+ "@biomejs/biome": "^2.4.2",
78
+ "@commitlint/cli": "^20.5.0",
79
+ "@commitlint/config-conventional": "^20.5.0",
80
+ "@tailwindcss/postcss": "^4",
81
+ "@types/node": "^20",
82
+ "@types/react": "^19",
83
+ "@types/react-dom": "^19",
84
+ "@types/uuid": "^11.0.0",
85
+ "@types/ws": "^8.18.1",
86
+ "esbuild": "^0.27.4",
87
+ "git-cliff": "^2.12.0",
88
+ "husky": "^9.1.7",
89
+ "knip": "^5.85.0",
90
+ "tailwindcss": "^4",
91
+ "tsx": "^4.21.0",
92
+ "typescript": "^5"
93
+ },
94
+ "bin": {
95
+ "khal-os": "./packages/os-cli/dist/cli.js"
96
+ },
97
+ "files": [
98
+ "packages/os-cli/dist/"
99
+ ],
100
+ "packageManager": "pnpm@10.28.2+sha512.41872f037ad22f7348e3b1debbaf7e867cfd448f2726d9cf74c08f19507c31d2c8e7a11525b983febc2df640b5438dee6023ebb1f84ed43cc2d654d2bc326264",
101
+ "pnpm": {
102
+ "onlyBuiltDependencies": [
103
+ "esbuild",
104
+ "node-pty",
105
+ "@sentry/cli"
106
+ ]
107
+ }
9
108
  }