Files
openclaw-assistant/AGENTS.md
T
Yu-gaClaude Sonnet 4.6google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
f8eb868e17 Add missing Android node command families (#189)
* Add missing Android node command families (parity gap)

- Implement Notifications, System, Photos, Contacts, Calendar, and Motion command families.
- Add OpenClawNotificationListenerService and NotificationManager for notification support.
- Implement robust runtime permission checks and structured error handling in all handlers.
- Wire new handlers into NodeRuntime, InvokeDispatcher, and ConnectionManager.
- Conditionally advertise capabilities to the gateway based on granted permissions.
- Add unit tests for command routing and handler logic.
- Update AndroidManifest.xml with necessary permissions and service declarations.

Co-authored-by: yuga-hashimoto <74749461+yuga-hashimoto@users.noreply.github.com>

* Refine Android node command families based on PR feedback

- Implement actual Notification actions (dismiss, open) using NotificationListenerService.
- Correct permission gating for Notifications (use Listener Service check instead of POST_NOTIFICATIONS).
- Add runtime permission check for system.notify on Android 13+.
- Improve Calendar event insertion by querying for a writable calendar instead of hardcoding ID 1.
- Update capability advertisement in ConnectionManager to reflect true availability.
- Enhance PhotosHandler and MotionHandler with more complete implementations.
- Update unit tests to match refined permission and action logic.

Co-authored-by: yuga-hashimoto <74749461+yuga-hashimoto@users.noreply.github.com>

* Finalize Android node command families with refined notification support

- Implement dismiss/open notification actions using NotificationListenerService.
- Return NOT_IMPLEMENTED for reply notification action as requested.
- Fix permission gating for notifications (use listener service status).
- Add runtime permission check for system notifications on Android 13+.
- Improve calendar event creation with dynamic writable calendar selection.
- Refine capability advertising in ConnectionManager.
- Clean up unused imports and duplicated logic.
- Update unit tests to match refined behavior.

Co-authored-by: yuga-hashimoto <74749461+yuga-hashimoto@users.noreply.github.com>

* fix: address review issues in node command families PR

- MotionHandler: add close() to unregister SensorEventListener on disconnect
- NodeRuntime: call motionHandler.close() in disconnect() for proper cleanup
- OpenClawNotificationListenerService: add @Volatile to companion manager field
- SystemHandlerTest: replace unconditional SDK_INT branch with asserting tests

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: add on-demand permission requests to new node command handlers

Contacts, Calendar, Photos, and Motion handlers now use PermissionRequester
to show the system permission dialog when a command is first invoked,
matching the existing SMS/Camera handler pattern.

- ContactsHandler, CalendarHandler, PhotosHandler, MotionHandler:
  add attachPermissionRequester() + ensureXPermission() suspend helpers,
  convert handle methods to suspend fun
- PermissionRequester: add human-readable labels for new permissions
- NodeRuntime: expose attachPermissionRequester() delegating to all handlers
- MainActivity: wire permissionRequester to new handlers on startup
- InvokeDispatcherTest: update every -> coEvery for suspend handler mocks

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: guide user to notification listener settings via dialog

When notifications.list or notifications.actions is invoked without
notification access, show an AlertDialog explaining the requirement
and open ACTION_NOTIFICATION_LISTENER_SETTINGS on confirmation.

- PermissionRequester: add requestNotificationAccess() suspend fun
- NotificationsHandler: add PermissionRequester wiring, make handle
  methods suspend, call requestNotificationAccess() before error return
- NodeRuntime.attachPermissionRequester: include notificationsHandler

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* add funding

---------

Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 00:28:27 -08:00

472 B

AGENTS.md

Git ワークフロー

PR作成

GitHub CLI (gh コマンド) を使用してPRを作成すること。

# 変更をコミット
git add <files>
git commit -m "commit message"

# ブランチをpush
git push origin <branch-name>

# ghコマンドでPR作成
gh pr create --title "PRタイトル" --body "PR本文" --base main

注意: git コマンドだけでなく、必ず gh コマンドを使ってPRを作成すること。