Skip to content
Merged

Dev #464

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
cfa1871
docs: fix broken star history chart in READMEs
OctoBored Aug 18, 2026
761ca88
Merge pull request #425 from OctoBored/fix/star-history-chart
zfoong Aug 19, 2026
024545b
docs: move the documentation site to craftbot-live (#428)
korivi-CraftOS Aug 20, 2026
4259153
Merge pull request #436 from CraftOS-dev/staging
zfoong Aug 29, 2026
b5baec6
feature:Localization update
Aug 30, 2026
759b84a
Rename living UI to agent app
Aug 30, 2026
6382024
Rename sidebar item
Aug 30, 2026
7b58fa1
Improve agent app UI/ux
Aug 31, 2026
ac1b457
reset default language to en
Aug 31, 2026
a2f61e1
fix: long file path issue - windows
ahmad-ajmal Aug 31, 2026
465a688
Create fallback code to handle older agent app manifest version
Sep 1, 2026
fa56854
Merge branch 'V1.4.3' of https://github.com/craftos-dev/craftbot into…
Sep 1, 2026
995e811
fix: better logging for agent app + import in bg proces + UX
ahmad-ajmal Sep 1, 2026
bd2b4df
fix: evolve agent debug logs
ahmad-ajmal Sep 2, 2026
31a8a5c
fix #442: don't flag an in-flight parallel duplicate as crashed
AmirF194 Sep 5, 2026
e82cef3
bug:context overflow causing event stream collapsed
zfoong Sep 7, 2026
97ef1ab
set write and edit file action parallelizable to prevent extra wasted…
Sep 7, 2026
5c427b8
make MCP server root configurable and make playwright save their outp…
Sep 7, 2026
fe6bc07
Calculate system prompt and event stream token properly
zfoong Sep 7, 2026
556093b
fix: prevent free-text submission during IME composition for question…
Koyukopan Sep 7, 2026
f3c3dd2
scratch pad, session specific event and event unprocessed file, updat…
Sep 7, 2026
da0d275
Merge pull request #446 from CraftOS-dev/fix/free-text-ime
zfoong Sep 7, 2026
3b87745
Merge pull request #445 from CraftOS-dev/fix/context-overflow
zfoong Sep 7, 2026
5c64383
Add per-file locks for write_file and stream_edit
RooberSmoth Sep 8, 2026
6537d48
Merge pull request #447 from CraftOS-dev/file-lock-branch
zfoong Sep 9, 2026
c33522c
Revamp agent app system
Sep 10, 2026
834328c
Large revamp of agent app system
Sep 11, 2026
0c69423
commit file lock module
Sep 11, 2026
fa1d308
small read file action update
Sep 11, 2026
e475267
real-time refresh of agent app operation
Sep 13, 2026
841f801
Standardizing agent app kit
Sep 14, 2026
2f6f36f
fix: save ui state
ahmad-ajmal Sep 15, 2026
25963d8
feat(web-ui): live data freshness and responsiveness revamp
ahmad-ajmal Sep 15, 2026
d1a733c
op smoke operation
Sep 16, 2026
19ca315
Merge branch 'V1.4.3' of https://github.com/craftos-dev/craftbot into…
Sep 16, 2026
6ab27d0
fix: import app not starting
ahmad-ajmal Sep 16, 2026
3e132c8
remove dead reference and fix minor agent app bug
Sep 17, 2026
5bbf0fd
Merge branch 'V1.4.3' of https://github.com/craftos-dev/craftbot into…
Sep 17, 2026
b18f699
fix: gmail metadata + cuncurrent tasks not ending
ahmad-ajmal Sep 17, 2026
9088469
change lui signature to a2app or agent app
Sep 18, 2026
55b993e
Merge branch 'V1.4.3' of https://github.com/craftos-dev/craftbot into…
Sep 18, 2026
4fe9618
fix: playbook nodes
ahmad-ajmal Sep 18, 2026
a421e50
fix: parallel actions
ahmad-ajmal Sep 18, 2026
93d8dc9
update version number
ahmad-ajmal Sep 18, 2026
09d4022
integration: posthog
ahmad-ajmal Sep 20, 2026
59ba4dc
Add SkillUI as default skill and context7 as default MCP
Sep 21, 2026
e0ca044
Unauthenticated arbitrary file read (#450)
ahmad-ajmal Sep 22, 2026
8aa2c2d
fix: process killing logic
ahmad-ajmal Sep 22, 2026
aee90b8
requirements drift
ahmad-ajmal Sep 22, 2026
f2af77c
WS auth issue (#451)
ahmad-ajmal Sep 23, 2026
44f052c
fix: A2App agent-token gate is bypassed by sending any Origin header …
ahmad-ajmal Sep 23, 2026
6a46f13
A2App passthrough and WebSocket paths (#454)
ahmad-ajmal Sep 23, 2026
e15ed5f
cleanup: remove observation logic deadcode (#456)
ahmad-ajmal Sep 23, 2026
e04e570
Merge: process killing logic (#457)
korivi-CraftOS Sep 23, 2026
663c8ad
Merge: requirements drift (#458)
korivi-CraftOS Sep 23, 2026
ce41795
AGENT md update for V1.4.3 (#460)
zfoong Sep 23, 2026
f2d855d
Merge pull request #443 from AmirF194/fix/activity-log-parallel-inten…
korivi-CraftOS Sep 23, 2026
4a07b5d
fix: don't flag an in-flight parallel duplicate as crashed (#462)
korivi-CraftOS Sep 23, 2026
1631b42
harden: container isolation, MCP argument handling, bridge token comp…
korivi-CraftOS Sep 23, 2026
7a623a0
Fix agent app import causing UX issue
Sep 23, 2026
cab503a
feat: unify the three install paths, replace the frozen agent (#440)
ahmad-ajmal Sep 23, 2026
793beb1
Merge pull request #463 from CraftOS-dev/V1.4.3
ahmad-ajmal Sep 23, 2026
2eff133
fix: lint
ahmad-ajmal Sep 23, 2026
47ae3b0
fix: pin the pip that reads the dependency locks
ahmad-ajmal Sep 23, 2026
e6c5743
logging for missed launch
ahmad-ajmal Sep 23, 2026
9222224
lint fix
ahmad-ajmal Sep 23, 2026
ec34cdd
Update launcher view
zfoong Sep 23, 2026
f4605bb
fix: key macOS locks on process arch, not the interpreter's build tag
ahmad-ajmal Sep 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
62 changes: 60 additions & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@
__pycache__
*.py[cod]
*.log
.env
.env.*
.venv
venv
node_modules
Expand All @@ -23,3 +21,63 @@ install.bat
OmniParser_CraftOS
debug_images
workspace

# ---------------------------------------------------------------------------
# Secrets and per-machine runtime state — never belongs in an image.
#
# `COPY . .` takes whatever is in the build context, i.e. a developer's working
# tree, and the release workflow pushes the resulting image to a public
# registry. Anything not listed here gets baked into a layer and published, and
# layers are permanent: deleting the file in a later layer does not remove it.
# CI escapes it only by checking out clean, which makes this a trap that fires
# exactly once, on someone's laptop. (Same failure as the old PyInstaller spec's
# blanket app/data entry, which shipped 1.1 GB of one machine's memory index
# and databases.) Keep this list in step with .gitignore.
# ---------------------------------------------------------------------------

# Secrets and credentials
.env
.env.*
.credentials
.credentials/
config.json
app/config/settings.json
app/config/mcp_config.json
app/config/skills_config.json
app/config/scheduler_config.json

# Per-install agent state
app/data/.usage
app/data/.file_index
agent_file_system
agent_bundle
chroma_db_memory
*.db
.craftbot
**/.craftbot
.craftbot-managed
logs
**/logs
**/agent_logs.txt
**/memory.txt
**/USER.md
**/CONVERSATION_HISTORY.md
**/EVENT.md
**/EVENT_UNPROCESSED.md
**/onboarding_config.json
**/gui/config
**/.whatsapp_web_sessions

# Provisioned runtimes and build caches — re-fetched inside the image
runtime
wheelhouse
downloads-cache
npm-cache
playwright-browsers
hf-cache
.playwright-mcp

# Editor / tooling
.claude
.vscode
.idea
24 changes: 12 additions & 12 deletions .github/workflows/living-ui.yml → .github/workflows/agent-app.yml
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
name: living-ui
name: agent-app

# Self-test for the Living UI TEMPLATE code (kit/blueprint/tools) in this repo.
# Self-test for the Agent App TEMPLATE code (kit/blueprint/tools) in this repo.
# Scaffolds a throwaway project and runs the local validation gate on it.
# User-made Living UIs never touch this workflow — they validate locally.
# User-made Agent Apps never touch this workflow — they validate locally.

on:
push:
paths:
- 'living-ui/**'
- '.github/workflows/living-ui.yml'
- 'agent-app/**'
- '.github/workflows/agent-app.yml'
pull_request:
paths:
- 'living-ui/**'
- '.github/workflows/living-ui.yml'
- 'agent-app/**'
- '.github/workflows/agent-app.yml'

defaults:
run:
working-directory: living-ui
working-directory: agent-app

jobs:
gate:
Expand All @@ -37,10 +37,10 @@ jobs:
uses: actions/cache@v4
with:
path: |
~/Library/Caches/craftos-living-ui/pb
~/.cache/craftos-living-ui/pb
~\AppData\Local\craftos-living-ui\pb
key: pb-${{ runner.os }}-${{ hashFiles('living-ui/spec/pocketbase.version') }}
~/Library/Caches/craftos-agent-app/pb
~/.cache/craftos-agent-app/pb
~\AppData\Local\craftos-agent-app\pb
key: pb-${{ runner.os }}-${{ hashFiles('agent-app/spec/pocketbase.version') }}

- name: Install workspace
run: npm install
Expand Down
49 changes: 0 additions & 49 deletions .github/workflows/ci.yml.disabled

This file was deleted.

73 changes: 73 additions & 0 deletions .github/workflows/launcher.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: Launcher

# CI for the native launcher in launcher/ (Rust + Slint). The Release
# workflow builds and ships it; this one catches breakage on the way there,
# on every platform the launcher is shipped for.

on:
push:
paths:
- "launcher/**"
- ".github/workflows/launcher.yml"
pull_request:
paths:
- "launcher/**"
- ".github/workflows/launcher.yml"

env:
CARGO_TERM_COLOR: always

jobs:
test:
name: Test (${{ matrix.os_label }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
os_label: linux
- os: windows-latest
os_label: windows
- os: macos-latest
os_label: macos

defaults:
run:
working-directory: launcher

steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Rust
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy

- name: Cache cargo
uses: Swatinem/rust-cache@v2
with:
workspaces: launcher

# Same insurance as the Release workflow: Slint has no C build deps,
# but a few crates probe for these headers.
- name: Linux build prerequisites
if: matrix.os_label == 'linux'
run: |
sudo apt-get update
sudo apt-get install -y libxkbcommon-dev libgl1-mesa-dev libfontconfig1-dev

- name: Format
if: matrix.os_label == 'linux'
run: cargo fmt --all -- --check

- name: Clippy
if: matrix.os_label == 'linux'
run: cargo clippy --release -- -D warnings

- name: Test
run: cargo test --release

- name: Build
run: cargo build --release
Loading
Loading