Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
93 commits
Select commit Hold shift + click to select a range
f378055
feat(codegraph): content-addressed code retrieval engine + agent tool…
sanil-23 May 26, 2026
0b185b4
feat(skills): skill input + definition types for the registry (D2 par…
sanil-23 May 26, 2026
127cd61
feat(skills): registry loader + skills_run background RPC (D2/D3)
sanil-23 May 26, 2026
768d1b0
feat(skills): run skills as the orchestrator agent guided by SKILL.md
sanil-23 May 26, 2026
bf3add4
style(codegraph,skills): apply rustfmt to feat-branch files
sanil-23 May 27, 2026
24d1a55
perf(codegraph): batch embeds + single-transaction blob inserts
sanil-23 May 27, 2026
cb07fc1
fix(codegraph): never send empty structural docs to the embedder
sanil-23 May 27, 2026
fcebf55
test(codegraph): index_e2e_cloud tolerates Partial coverage
sanil-23 May 27, 2026
49460be
feat(codegraph): size-gated index modes + synchronous index-first
sanil-23 May 27, 2026
ee55449
feat(skills): skill_run runs the orchestrator + streams every step to…
sanil-23 May 27, 2026
697e930
feat(skills): ship github-issue-crusher as a bundled default skill
sanil-23 May 27, 2026
6e66acb
feat(skills): seed bundled default skills at core boot
sanil-23 May 27, 2026
0078c7b
feat(skills): make github-issue-crusher fork-aware (cross-repo PR)
sanil-23 May 27, 2026
54d3a90
feat(skills): autonomous skill runs — lifted iteration cap + full web
sanil-23 May 27, 2026
fd75e55
Merge branch 'feat/codegraph-skills' of https://github.com/sanil-23/o…
graycyrus May 27, 2026
aaf8b31
feat(skills): tighten github-issue-crusher SKILL.md — delegation disc…
sanil-23 May 27, 2026
75271bf
feat(skills): code_executor navigates codegraph-first
sanil-23 May 27, 2026
ebfbd05
feat(dev-workflow): wire config to cron + bundled skill + execution UI
graycyrus May 28, 2026
e8f6c2f
test(dev-workflow): update panel tests for cron RPC instead of localS…
graycyrus May 28, 2026
ec01a6d
test(dev-workflow): add coverage for toggle, run now, history, and er…
graycyrus May 28, 2026
e9a04b7
feat(skills): issue-crusher uses local git+gh, opens DRAFT PR, pins i…
sanil-23 May 28, 2026
296bb8e
fix(skills): isolate skill_run transcripts so resume can never poison
sanil-23 May 28, 2026
d47d5fc
skills(issue-crusher): name delegate_run_code explicitly per step
sanil-23 May 28, 2026
c918092
skills(issue-crusher): make codegraph_search mandatory in step 5
sanil-23 May 28, 2026
c068d26
orchestrator: route ALL code-repo work to delegate_run_code; strip SK…
sanil-23 May 28, 2026
f389a31
agents: tighten when_to_use for code_executor + tools_agent so the LL…
sanil-23 May 28, 2026
3e90d05
skills: reject degenerate-response final messages; bind code_executor…
sanil-23 May 28, 2026
2e36b17
skills: add pr-review-shepherd — Phase-6 PR-to-mergeable shepherd
sanil-23 May 28, 2026
815b499
skills: add run_skill orchestrator tool for skill chaining (issue-cru…
sanil-23 May 28, 2026
ec9a576
Merge graycyrus/feat/dev-workflow-full into feat/codegraph-skills
sanil-23 May 28, 2026
1f875ac
skills: add openhuman.skills_describe RPC for FE skill picker
sanil-23 May 28, 2026
14ac178
frontend: SkillsRunnerPanel — pick any bundled skill, render inputs, …
sanil-23 May 28, 2026
8594e7c
skills: add openhuman.skills_recent_runs RPC + scan_runs parser
sanil-23 May 28, 2026
54d3448
fix(skills): clean up scan_runs parser — split on first colon
sanil-23 May 28, 2026
dc4b473
frontend: SkillsRunnerPanel gains cron scheduling + recent runs viewer
sanil-23 May 28, 2026
9200e75
skills: in-app log viewer — chat-like inline expand of any run's stre…
sanil-23 May 28, 2026
e49c93d
frontend: promote Skills Runner to /skills as new 'Runners' tab
sanil-23 May 28, 2026
900a5df
feat(dev-workflow): add run output visibility to panel
graycyrus May 28, 2026
99e6f98
fix(dev-workflow): embed full skill instructions in cron job prompt
graycyrus May 28, 2026
9a673aa
fix(dev-workflow): show active config at top regardless of repo loading
graycyrus May 28, 2026
a28b54a
fix(dev-workflow): use response.result instead of response.data for RPC
graycyrus May 28, 2026
ecb3fc1
fix(dev-workflow): hide setup form when active config exists
graycyrus May 28, 2026
d7816aa
feat(dev-workflow): smart issue selection + running state indicator
graycyrus May 28, 2026
4363539
tauri(cef): honor OPENHUMAN_CEF_NO_SANDBOX=1 to launch on non-root Li…
sanil-23 May 28, 2026
4f66d62
test(dev-workflow): comprehensive test coverage for run-now flow
graycyrus May 28, 2026
91397c7
frontend: rich Composio pickers for repo/branch inputs in SkillsRunne…
sanil-23 May 28, 2026
8c6180e
fix(dev-workflow): fix active config display and toggle accessibility
M3gA-Mind May 28, 2026
0ed47d4
merge: pull graycyrus/feat/dev-workflow-full (#2802) — 8 newer dev-wo…
sanil-23 May 28, 2026
5f9a285
docs(skills): plan unifying SkillsRunnerBody with DevWorkflowPanel sc…
sanil-23 May 28, 2026
afdee16
feat(skills): toggle enable/disable on saved schedules per skill
sanil-23 May 28, 2026
d07484f
feat(skills): per-schedule run history with expandable output
sanil-23 May 28, 2026
ac935c2
feat(skills): active-config emphasis for top schedule
sanil-23 May 28, 2026
fc19449
feat(skills): SmartIssuePicker subcomponent for dev-workflow
sanil-23 May 28, 2026
4bf3e84
refactor(skills): deprecate DevWorkflowPanel — moved to /skills
sanil-23 May 28, 2026
8b671fd
fix(i18n): close skillsRunner chunk drift + drop unused linkback keys
sanil-23 May 28, 2026
e497af6
merge: pull upstream/main — brings #2818 (reasoning_content multi-tur…
sanil-23 May 28, 2026
0717a63
Revert "refactor(skills): deprecate DevWorkflowPanel — moved to /skills"
sanil-23 May 28, 2026
b61d9cc
feat(cron): cronToHuman helper for human-readable schedule strings
sanil-23 May 28, 2026
89f11b0
feat(skills): route stubs for /skills/run and /skills/new
sanil-23 May 28, 2026
c474bc3
feat(skills): scheduled-skills dashboard at /skills
sanil-23 May 28, 2026
5ca14bb
feat(skills): bind ?skill= URL param to runner picker
sanil-23 May 28, 2026
9e2f7a8
refactor(skills): extract CreateSkillForm from CreateSkillModal
sanil-23 May 28, 2026
d93d51b
feat(skills): /skills/new page wraps CreateSkillForm
sanil-23 May 28, 2026
4de0bba
fix(skills): restore /skills → Skills.tsx with 4 sub-tabs (Composio/C…
sanil-23 May 28, 2026
7993437
refactor(skills): extract ScheduledCronCard for dashboard reuse
sanil-23 May 28, 2026
c2a9221
refactor(skills): SkillsRunnerBody renders saved schedules as Schedul…
sanil-23 May 28, 2026
56ad5e6
feat(skills): Runners sub-tab IS the scheduled-skills dashboard + leg…
sanil-23 May 28, 2026
7342850
fix(skills): back from /skills/run lands on Runners tab (not Composio)
sanil-23 May 28, 2026
0971d8a
refactor(skills): strip unused fields from Create-a-Skill form
sanil-23 May 28, 2026
026a641
ui(skills): cancel/success in /skills/new returns to Runners tab; hid…
sanil-23 May 28, 2026
db50038
agents(code_executor): GitHub state I/O via composio, NOT gh CLI (har…
sanil-23 May 28, 2026
416f62c
feat(composio): connection_identity helper for cross-subsystem identi…
sanil-23 May 28, 2026
de69d75
feat(skills): `[github]` block in skill.toml schema (gate off by defa…
sanil-23 May 28, 2026
c1c7216
feat(skills): `[[inputs]]` editor (Phase 1) — wire shape + schema rou…
sanil-23 May 28, 2026
d7b2fe5
feat(skills): `[github]` preflight gate wired into spawn_skill_run_ba…
sanil-23 May 28, 2026
d184584
feat(skills): turn on `[github]` strict preflight gate for all three …
sanil-23 May 28, 2026
62c4ddb
feat(skills/github-issue-crusher): replace gh CLI with composio_execu…
sanil-23 May 28, 2026
6679757
feat(skills/pr-review-shepherd): replace gh CLI with composio_execute…
sanil-23 May 28, 2026
433af33
feat(skills/dev-workflow): replace gh CLI with composio_execute for G…
sanil-23 May 28, 2026
fe597f4
feat(skills): surface `[github]` preflight gate failures distinctly o…
sanil-23 May 28, 2026
5d77839
feat(skills): `[[inputs]]` editor + skill.toml persistence (Phases 2-4)
sanil-23 May 28, 2026
03de215
i18n(skills): locale-parity backfill for skills.create.inputs.* keys
sanil-23 May 28, 2026
d93d2eb
ui(skills): drop the 'Dev Workflow lives in Settings' blurb from Runners
sanil-23 May 28, 2026
1e2f621
test(skills): vitest cases for the new [[inputs]] editor in CreateSki…
sanil-23 May 28, 2026
ce7cf08
style: apply cargo fmt + prettier to fix CI formatting gates
M3gA-Mind May 28, 2026
b544bc4
fix(skills): use arrow function in forwardRef to satisfy prefer-arrow…
M3gA-Mind May 28, 2026
6e181dc
Merge branch 'main' into pr/2880
M3gA-Mind May 28, 2026
2070553
Merge remote-tracking branch 'upstream/main' into pr/2880
M3gA-Mind May 28, 2026
96eb7ce
fix(skills): update CreateSkillModal test to match refactored form
M3gA-Mind May 28, 2026
e4877dc
fix(skills): resolve ops_tests compilation errors after [[inputs]] ad…
M3gA-Mind May 29, 2026
baac44b
chore: trigger CI
M3gA-Mind May 29, 2026
4b30764
test(skills): add coverage for skillsApi RPC methods, SkillsRunnerPan…
M3gA-Mind May 29, 2026
831c83e
test(skills): add BranchPicker, RepoPicker, SmartIssuePicker tests fo…
M3gA-Mind May 29, 2026
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
6 changes: 5 additions & 1 deletion .claude/memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,11 @@ Quick reference for anyone starting with Claude on this project. Updated by the
- **Core port** — `7788` (default; in-process inside Tauri host). Check with `lsof -i :7788`.
- **`pnpm core:stage`** — no-op (sidecar removed in PR #1061). Use `pnpm dev:app` for full Tauri+core dev.
- **Kill stuck processes** — `lsof -i :7788` then `kill <PID>`. Useful when `dev:app` reports a stale listener and you want to force a fresh boot rather than relying on the handle's auto-recovery.
- **Skills runtime removed** — the QuickJS / `rquickjs` runtime is gone; `src/openhuman/skills/` is metadata-only ("Legacy skill metadata helpers retained after QuickJS runtime removal"). Skill execution surfaces are being rebuilt; don't assume a `.skill` can run end-to-end without checking the current code.
- **Skills runtime rebuilt (PR #2707)** — QuickJS is gone, but skills now run as orchestrator-focused agents via `skills_run` RPC. Default skills live in `src/openhuman/skills/defaults/<id>/` with `skill.toml` + `SKILL.md`, registered in `registry.rs` `DEFAULT_SKILLS` const. Seeded into `<workspace>/skills/` on boot (idempotent, non-destructive). Bundled defaults: `github-issue-crusher`, `dev-workflow`. Skills run with 200 iteration cap and full web access.
- **Codegraph tools (PR #2707)** — `codegraph_index` and `codegraph_search` registered in `src/openhuman/tools/ops.rs`. Implementation in `src/openhuman/codegraph/` — tree-sitter extraction, SQLite FTS5, dense embeddings, RRF fusion. Auto-indexes on first search.
- **Tool names are exact** — Always check `src/openhuman/tools/ops.rs` for authoritative names. Key ones: `edit` (not `edit_file`), `composio` (not `composio_execute`), `codegraph_index`, `codegraph_search`.
- **`cron_add` RPC** — Was missing from `schemas.rs` (only existed as agent tool). Now exposed as `openhuman.cron_add`. Frontend wrapper: `openhumanCronAdd()` in `app/src/utils/tauriCommands/cron.ts`.
- **Worktree `pnpm build` rolldown fix** — Worktrees can miss `@rolldown/binding-darwin-arm64`. Fix: `pnpm install --force`.

## Artifacts Domain (Issue #2776)

Expand Down
9 changes: 7 additions & 2 deletions app/src-tauri/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2023,10 +2023,15 @@ fn append_platform_cef_gpu_workarounds(args: &mut Vec<CefCommandLineArg>, os: &s
#[cfg(target_os = "linux")]
{
let uid = nix::unistd::getuid().as_raw();
if os == "linux" && linux_is_root_uid(uid) {
// Dev-only: also honor OPENHUMAN_CEF_NO_SANDBOX=1 so a non-root headless
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[minor] Comment says "Dev-only" but this env var override has no #[cfg(debug_assertions)] guard, so it works in production release builds. Wrap the forced binding and the || forced branch in #[cfg(debug_assertions)] to match the stated intent — or remove "Dev-only" from the comment and document the production surface explicitly.

// box (no sudo to chown chrome-sandbox root:4755) can launch over RDP.
let forced = std::env::var("OPENHUMAN_CEF_NO_SANDBOX")
.map(|v| v == "1" || v.eq_ignore_ascii_case("true"))
.unwrap_or(false);
if os == "linux" && (linux_is_root_uid(uid) || forced) {
args.push(("--no-sandbox", None));
log::info!(
"[cef-startup] running as root (uid=0) on Linux: adding --no-sandbox \
"[cef-startup] Linux: adding --no-sandbox (root uid or OPENHUMAN_CEF_NO_SANDBOX) \
(OPENHUMAN-TAURI-K1)"
);
}
Expand Down
29 changes: 29 additions & 0 deletions app/src/AppRoutes.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ import Onboarding from './pages/onboarding/Onboarding';
import Rewards from './pages/Rewards';
import Routines from './pages/Routines';
import Settings from './pages/Settings';
import SkillNew from './pages/SkillNew';
import Skills from './pages/Skills';
import SkillsRun from './pages/SkillsRun';
import WebCallbackPage from './pages/WebCallbackPage';
import Welcome from './pages/Welcome';

Expand Down Expand Up @@ -80,6 +82,33 @@ const AppRoutes = () => {
}
/>

{/* Skills lives at /skills with its 4 sub-tabs (Composio / Channels /
MCP Servers / Runners). The scheduled-skills dashboard concept
composes INSIDE the Runners sub-tab, not as a separate top-level
page — the bottom-bar "Connections" entry has always pointed at
/skills to surface Composio integrations + MCP, and that muscle
memory is restored here.
`/skills/new` is the create-a-skill authoring page.
Order matters: keep `/skills/new` before `/skills` so it wins the
prefix match. */}
<Route
path="/skills/new"
element={
<ProtectedRoute requireAuth={true}>
<SkillNew />
</ProtectedRoute>
}
/>

<Route
path="/skills/run"
element={
<ProtectedRoute requireAuth={true}>
<SkillsRun />
</ProtectedRoute>
}
/>

<Route
path="/skills"
element={
Expand Down
Loading
Loading