mirror of
https://github.com/Heretek-AI/hermes-mobile.git
synced 2026-07-01 16:12:43 -04:00
chore: bootstrap pnpm monorepo workspace
Initial workspace for hermes-mobile, a Capacitor 8 Android port of hermes-desktop that runs hermes-agent on the device. - pnpm workspaces with apps/* and packages/* layouts - exact-version pinning via .npmrc save-exact=true (mirrors the hermes-agent-style dependency hygiene that tightened after the Mini Shai-Hulud worm hit mistralai 2.4.6 on PyPI; prevents quarantined releases breaking fresh installs) - .gitignore covers node_modules, dist, android/.gradle, *.jks keystores, Python artifacts, and the review/ vendored checkouts (kept local-only, not in version control) Scripts declared at the root: pnpm vendor:renderer # rsync desktop renderer into packages/renderer pnpm build # build:ipc + build:renderer + build:mobile pnpm dev:mobile # vite dev server (browser-only, no native) pnpm cap:sync # cap sync android pnpm android:run # install debug APK to attached device
This commit is contained in:
+68
@@ -0,0 +1,68 @@
|
||||
# Project metadata
|
||||
.claude/
|
||||
CLAUDE.md
|
||||
review/
|
||||
|
||||
# Dependencies
|
||||
node_modules/
|
||||
.pnpm-store/
|
||||
|
||||
# Build artifacts
|
||||
dist/
|
||||
build/
|
||||
out/
|
||||
*.tsbuildinfo
|
||||
|
||||
# Capacitor / Android
|
||||
apps/mobile/android/.gradle/
|
||||
apps/mobile/android/.idea/
|
||||
apps/mobile/android/local.properties
|
||||
apps/mobile/android/app/build/
|
||||
apps/mobile/android/captures/
|
||||
apps/mobile/android/app/release/
|
||||
apps/mobile/android/app/debug/
|
||||
apps/mobile/android/*.iml
|
||||
apps/mobile/android/.cxx/
|
||||
|
||||
# iOS (not used in v1, scaffolded for future)
|
||||
apps/mobile/ios/Pods/
|
||||
apps/mobile/ios/build/
|
||||
|
||||
# Generated renderer
|
||||
packages/renderer/dist/
|
||||
|
||||
# Keystore and signing material
|
||||
*.jks
|
||||
*.keystore
|
||||
keystore.properties
|
||||
android-runner/app/release.keystore
|
||||
|
||||
# Logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
|
||||
# OS files
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Editor
|
||||
.vscode/*
|
||||
!.vscode/extensions.json
|
||||
.idea/
|
||||
|
||||
# Env
|
||||
.env
|
||||
.env.local
|
||||
.env.*.local
|
||||
|
||||
# Python artifacts (vendored hermes-agent install)
|
||||
__pycache__/
|
||||
*.pyc
|
||||
.pytest_cache/
|
||||
.venv/
|
||||
venv/
|
||||
|
||||
# Sensitive
|
||||
.sentryclirc
|
||||
@@ -0,0 +1,5 @@
|
||||
# Pin exact versions for hermes-agent-style dependency hygiene (issue #367 — Mini Shai-Hulud)
|
||||
save-exact=true
|
||||
strict-peer-dependencies=false
|
||||
auto-install-peers=true
|
||||
shamefully-hoist=false
|
||||
@@ -0,0 +1,29 @@
|
||||
{
|
||||
"name": "hermes-mobile",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"description": "Android port of hermes-desktop — runs hermes-agent on-device via Capacitor + the desktop's React renderer.",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=20",
|
||||
"pnpm": ">=9"
|
||||
},
|
||||
"scripts": {
|
||||
"vendor:renderer": "bash apps/mobile/scripts/vendor-renderer.sh",
|
||||
"build:ipc": "pnpm --filter @hermes/ipc build",
|
||||
"build:renderer": "pnpm --filter @hermes/renderer build",
|
||||
"build:mobile": "pnpm --filter @hermes-mobile/app build",
|
||||
"build": "pnpm run build:ipc && pnpm run build:renderer && pnpm run build:mobile",
|
||||
"dev:mobile": "pnpm --filter @hermes-mobile/app dev",
|
||||
"cap:sync": "pnpm --filter @hermes-mobile/app cap sync android",
|
||||
"cap:open": "pnpm --filter @hermes-mobile/app cap open android",
|
||||
"android:assemble": "cd apps/mobile/android && ./gradlew assembleDebug",
|
||||
"android:run": "cd apps/mobile/android && ./gradlew installDebug",
|
||||
"typecheck": "pnpm -r run typecheck",
|
||||
"clean": "pnpm -r exec rm -rf dist node_modules/.cache"
|
||||
},
|
||||
"devDependencies": {
|
||||
"i18next": "^25.6.0",
|
||||
"typescript": "^5.9.3"
|
||||
}
|
||||
}
|
||||
Generated
+4053
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,3 @@
|
||||
packages:
|
||||
- "apps/*"
|
||||
- "packages/*"
|
||||
Reference in New Issue
Block a user