@chosengeneration/fire-code 0.6.0

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,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Light Code contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,88 @@
1
+ # Fire Code
2
+
3
+ Every codebase you work on, in one Windows window — each with its own
4
+ [Light Code](https://github.com/chosengenerationdev/light-code) agent, all working at the same time.
5
+
6
+ - **A sidebar of codebases.** Add any folder on your machine. Switch with a click, `Ctrl+1…9`, or
7
+ `Ctrl+K` and a few letters. Hide the sidebar with `Ctrl+B` for more room; a slim strip keeps
8
+ every agent's status in view.
9
+ - **Agents keep working in the background.** Each codebase runs in its own process, so a long task
10
+ in one never slows another, and switching away pauses nothing.
11
+ - **Your existing settings.** Point a codebase at the Light Code config it already has — the VS Code
12
+ extension's, or the Node host's that IntelliJ and PyCharm use — and its providers, MCP servers,
13
+ search connections and project settings apply in place. Or copy one, or start fresh.
14
+ - **Windows notifications** when a background agent finishes, needs your approval, or sends one
15
+ with `notify` — including scheduled runs. Click one to jump to that chat.
16
+ - **See who is waiting for you**: a "!" on any codebase whose agent needs your approval, an answer or a form.
17
+ - **Refer to other codebases**: `@payments-api:src/app.py`, or just `@` and pick one; every agent knows the others.
18
+ - **Git changes at a glance**: +new ~modified −deleted on each codebase that git manages.
19
+ - **Schedules run on time even for sleeping codebases**: Fire Code wakes a codebase just before its job is due
20
+ and lets it sleep again afterwards.
21
+ - **Idle codebases sleep** after a while to give memory back (never while working, waiting for you,
22
+ or holding schedules), and wake in a moment when clicked.
23
+ - **Reach beyond the codebase**: agents read any drive or shared folder, and may write anywhere — asking
24
+ you every time they write outside the codebase. Keys, passwords and Windows folders stay off-limits.
25
+ - **Fast, parallel file tools** written in Rust: find files across whole drives and shares, summarise a
26
+ folder, spot duplicates, read many files at once, and work through huge logs and CSV or Excel files
27
+ part by part — search, read any window, filter, group and total millions of rows in about a second.
28
+ - **Copy, move and zip** whole folders on every core — always asking first, with exactly what will be
29
+ copied, moved, replaced or extracted.
30
+ - **Several chats per codebase**, each its own agent, safe to run side by side.
31
+ - **Reports in Fire Code**: Markdown and HTML reports from scheduled runs open in Fire Code's own viewer.
32
+ - **One environment for every agent**: a startup script (.cmd, .bat or .ps1), folders to put on PATH,
33
+ and variables — plain values or saved credentials.
34
+ - **Everything Light Code does**: the same tools, MCP, Python tools, skills, Excel and Outlook,
35
+ Confluence, Jira, Bitbucket, Jenkins, AutoSys, search and schedules — it is the same agent.
36
+
37
+ ## Install
38
+
39
+ ```
40
+ npm i -g @chosengeneration/fire-code
41
+ fire-code
42
+ ```
43
+
44
+ Used **Sun Code** or **Sun Light Code** before? Fire Code is its new name. Your codebases, chats and credentials move
45
+ across by themselves the first time Fire Code starts; then remove the old package with
46
+ `npm uninstall -g @chosengeneration/sun-light-code`.
47
+
48
+ Windows 10 or 11 (x64) and Node.js 18 or newer. The package is prebuilt: it has **no install
49
+ scripts and no dependencies**, so installing only copies files — nothing is compiled and nothing is
50
+ downloaded, which is what makes it install cleanly on a locked-down office machine. The window uses
51
+ Microsoft Edge WebView2, which comes with Windows 11 (and with Edge on Windows 10).
52
+
53
+ ## Settings and keys
54
+
55
+ When you add a codebase you choose where its Light Code settings come from:
56
+
57
+ | Choice | What happens |
58
+ |---|---|
59
+ | **Link** | Uses an existing `config.json` in place. Changes made in Fire Code or in the other app reach both. |
60
+ | **Copy** | Takes a copy now; independent afterwards. |
61
+ | **New** | Empty settings, set up in that codebase's Settings. |
62
+
63
+ A folder's own `.lightcode/config.json` is always used, whichever you choose.
64
+
65
+ **API keys and passwords are not in config files.** The VS Code extension keeps them in VS Code's
66
+ encrypted storage, which another program cannot read, so enter each once in Fire Code — it then shares
67
+ them with every codebase. Fire Code keeps them in `%LOCALAPPDATA%\fire-code\secrets.json`, readable
68
+ by your Windows account only, not in an OS keychain; it says so rather than implying otherwise.
69
+
70
+ ## What it connects to
71
+
72
+ Nothing on its own. Like Light Code, Fire Code has no telemetry, no update checks and no default
73
+ endpoints: the only hosts contacted are the ones you configure. Each codebase's agent runs on
74
+ `127.0.0.1` behind a one-time token, and is stopped — with every process it started — when Fire Code
75
+ closes.
76
+
77
+ ## Theme
78
+
79
+ Settings (`Ctrl+,`) chooses light, dark or system and an accent colour. Every chat follows them,
80
+ and so do the window and taskbar icons; each chat keeps its own role colours.
81
+
82
+ ## Building it
83
+
84
+ The source is in [`apps/sun`](https://github.com/chosengenerationdev/light-code/tree/main/apps/sun)
85
+ of the Light Code repository, and Fire Code's Settings can export the whole repository as a zip that
86
+ builds offline. You need Rust 1.86+ (MSVC) and pnpm; then `node apps/sun/scripts/build.mjs`.
87
+
88
+ MIT licensed.
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env node
2
+ 'use strict'
3
+ /*
4
+ * `fire-code` - opens the Fire Code window and gives the terminal back.
5
+ *
6
+ * The window is a prebuilt exe in this package; there is nothing to compile and nothing was
7
+ * downloaded at install (the package has no install scripts and no dependencies). This launcher
8
+ * only tells it which Node to run each codebase's agent with - the one npm installed it with - and
9
+ * where the bundled Light Code host is.
10
+ */
11
+ const { spawn } = require('node:child_process')
12
+ const fs = require('node:fs')
13
+ const path = require('node:path')
14
+
15
+ const root = path.join(__dirname, '..')
16
+ const version = JSON.parse(fs.readFileSync(path.join(root, 'package.json'), 'utf8')).version
17
+ const args = process.argv.slice(2)
18
+
19
+ if (args.includes('--version') || args.includes('-v')) {
20
+ process.stdout.write(`${version}\n`)
21
+ process.exit(0)
22
+ }
23
+ if (args.includes('--help') || args.includes('-h')) {
24
+ process.stdout.write(`fire-code ${version}
25
+
26
+ Opens Fire Code: every codebase in one window, each with its own Light Code agent.
27
+ If it is already open, brings that window forward.
28
+
29
+ --version, -v Print the version
30
+ --help, -h This text
31
+
32
+ Data lives in %LOCALAPPDATA%\\fire-code (set FIRE_CODE_HOME to move it).
33
+ `)
34
+ process.exit(0)
35
+ }
36
+ if (process.platform !== 'win32') {
37
+ process.stderr.write('Fire Code is a Windows application. On this system, use the Light Code Node host: npx @chosengeneration/light-code\n')
38
+ process.exit(1)
39
+ }
40
+
41
+ const dist = path.join(root, 'dist')
42
+ const exe = path.join(dist, 'fire-code.exe')
43
+ if (!fs.existsSync(exe)) {
44
+ process.stderr.write(`fire-code: ${exe} is missing. Reinstall with: npm i -g @chosengeneration/fire-code\n`)
45
+ process.exit(1)
46
+ }
47
+
48
+ const child = spawn(exe, [], {
49
+ detached: true,
50
+ stdio: 'ignore',
51
+ env: {
52
+ ...process.env,
53
+ FIRE_CODE_NODE: process.execPath,
54
+ FIRE_CODE_HOST: path.join(dist, 'host', 'light-code.cjs'),
55
+ },
56
+ })
57
+ child.on('error', (error) => {
58
+ process.stderr.write(`fire-code: could not start ${exe}: ${error.message}\n`)
59
+ process.exit(1)
60
+ })
61
+ child.unref()
Binary file
Binary file