chore(deps): bump pnpm/action-setup from 4 to 6#1
Closed
dependabot[bot] wants to merge 105 commits into
Closed
Conversation
Anima — Make Every Hardware Intelligent. An open-source Agent OS that auto-discovers hardware devices, empowers each with AI Skills, and lets them autonomously sense, decide, and collaborate. Core modules: - EventBus: async event system with wildcard and error isolation - Rules Engine: fast-path safety rules with operators and cooldown - Memory System: markdown preferences + JSON history + learned profile - LLM Brain: skill-driven AI decisions with JSON response parsing - Scheduler: periodic async job execution - Discovery Orchestrator: adapter-based device scanning and registry - MQTT Client: topic builders and pub/sub wrapper - Skill System: 4 skills (humidifier, AC, light, coordinator) - MIoT Adapter: Xiaomi device discovery and control via python-miio - CLI (Rich) + FastAPI HTTP API + main orchestrator - Docker Compose deployment (core + Mosquitto MQTT) 55 tests, all passing. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move all files from anima/ to repo root so the repository root IS the project root. docs/, core/, adapters/, skills/, tests/ are now all top-level directories. 55 tests still passing. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Full English README with architecture, quick start, API reference, skill system docs, project structure, and roadmap - Chinese README (README.zh-CN.md) with same content - Language switcher links at top of both files Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add LLM_DISABLE_THINKING config to pass extra_body for models that require disabling deep thinking (e.g., Doubao) - Fix .env.example to use ANIMA_ prefix consistently - Fix docker-compose.yml env var references - Verified: Doubao doubao-seed-2-0-lite-260215 API working Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Three-column layout per design doc: - Left: device list with type icons and online status - Center: device cards with sensor data and capabilities - Right: AI decision stream (real-time polling) - Bottom: chat input bar pnpm monorepo setup: - `pnpm install` installs frontend + auto-runs `uv sync` for backend - `pnpm dev` starts both Vite (port 3000) and Python backend (port 8080) - Vite proxies /api/* and /health to backend Also includes Doubao LLM support (LLM_DISABLE_THINKING config). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Switch dashboard from dark to light theme (white backgrounds, subtle borders, shadows, emerald/violet accents) - Update both README.md and README.zh-CN.md: - "60 seconds quick start" with pnpm install + pnpm dev - Add Dashboard to module list - Fix env var names to ANIMA_ prefix - Add development scripts table - Update project structure with dashboard/ - Update roadmap (Dashboard now in v0.1) - Add prerequisites section Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Backend: - Add SettingsStore (data/config.json) for runtime user config - Add Xiaomi Cloud discovery via micloud — login with Mi account, get all bound devices + tokens from cloud (primary discovery method) - mDNS fallback when cloud not configured - Settings API: /api/settings/xiaomi/connect, /disconnect, /status - LLM config API: /api/settings/llm/configure, /status - All settings accessible via Dashboard UI or .env file Dashboard: - Add Settings panel (gear icon in header) - Xiaomi section: login form with account/password/region selector - LLM section: API key, model, base URL, disable-thinking toggle - Connection status indicators - Auto-triggers device scan after Xiaomi login Open-source design: users self-configure through Dashboard or .env, no hardcoded credentials. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Backend returns masked_key (first 8 chars + ***) and disable_thinking status in /api/settings/llm/status - Frontend shows current config as readonly summary when configured, with "修改配置" button to enter edit mode - Separate display key (masked) from input key (new value) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add /api/devices/add endpoint for manually adding devices by IP + token - Auto-probes device model via miio on manual add - Persists manual devices to data/config.json, reloads on startup - Dashboard: new "手动添加设备" section in settings panel with IP, token, name, device type selector - Xiaomi Cloud login is now optional, not required - Discovery order: manual devices → cloud → mDNS fallback Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace password login with QR code scan (much higher success rate): - User clicks "生成二维码" in Dashboard settings - Scans with Mi Home app - System auto-polls, gets serviceToken via longPolling - Fetches ALL devices with tokens via encrypted Cloud API - Registers devices in Discovery automatically Backend: - adapters/miot/xiaomi_cloud.py: XiaomiCloudConnector, QrLoginFlow, fetch_all_devices (RC4 encrypted API, homes + shared devices) - /api/settings/xiaomi/qr/start + /qr/poll endpoints - Cloud devices persisted to data/config.json Frontend: - QR code display with auto-polling status - No password input needed — just scan and go - Region selector (CN/TW/EU/US/SG/IN/RU) 55 tests passing. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dashboard: - Add ? Help button (top-right) with step-by-step usage guide - 5 steps: configure LLM → QR scan → view devices → AI decisions → chat - Includes manual device addition and external links README (EN + CN): - Add "After Launch: Connect Your Devices" section with 5-step guide - Explain why QR scan is needed (token security) - Point to in-app help button Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
After QR login, cloud devices now update existing local-discovered devices (matched by IP) instead of creating duplicates. This eliminates the "needs token" state for devices that already got tokens from cloud. Before: local scan creates miot_local_xxx (no token), QR login creates miot_cloud_xxx (with token) — user sees both, confused. After: QR login finds matching IP → updates existing device in-place with name, type, token, capabilities. No duplicates. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Device cards with "needs token" now show a detailed guide: 1. QR scan (recommended) — with link to settings 2. Multi-account hint — if device is on another account, scan with that one 3. Manual token input — collapsed by default, expandable Help panel updated with FAQ: - Why devices still need activation after QR scan (different account) - Bluetooth vs WiFi devices - Offline device troubleshooting QR success message now hints about unmatched devices when relevant. Principle: every edge case has a clear user-facing explanation and actionable next step — not just error logs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bumps [pnpm/action-setup](https://github.com/pnpm/action-setup) from 4 to 6. - [Release notes](https://github.com/pnpm/action-setup/releases) - [Commits](pnpm/action-setup@v4...v6) --- updated-dependencies: - dependency-name: pnpm/action-setup dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com>
Author
|
OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting If you change your mind, just re-open this PR and I'll resolve any conflicts on it. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Bumps pnpm/action-setup from 4 to 6.
Release notes
Sourced from pnpm/action-setup's releases.
Commits
0e279bbfix: update pnpm to 11.1.1 (#248)3e83581fix: drop patchPnpmEnv so standalone+self-update works on Windows (#258)551b42edocs(README): fixcache_dependency_pathtype (#257)739bfe4fix: self-update bootstrap to packageManager-pinned version (#233) (#256)f61705dchore: add CODEOWNERS7a5507bfix: restore inputs from state in post (#255)1155470fix: honor devEngines.packageManager.onFail=error (#252) (#254)91ab88efix: bin_dest output points to self-updated pnpm, not bootstrap (#249)e578e19fix: update pnpm to 11.0.48912a91fix: append (not prepend) action node dir to PATH for npm bootstrap (#241)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)