feat(tools): add native Pushover tool with priority and sound support

- Implements Pushover API as native tool (reqwest-based)
- Supports message, title, priority (-2 to 2), sound parameters
- Reads credentials from .env file in workspace
- 11 comprehensive tests covering schema, credentials, edge cases
- Follows CONTRIBUTING.md tool implementation patterns
This commit is contained in:
Vernon Stinebaker 2026-02-17 01:27:30 +08:00 committed by Chummy
parent 5d274dae12
commit 82790735cf
3 changed files with 272 additions and 0 deletions

View file

@ -19,6 +19,7 @@ pub mod image_info;
pub mod memory_forget;
pub mod memory_recall;
pub mod memory_store;
pub mod pushover;
pub mod schedule;
pub mod screenshot;
pub mod shell;
@ -45,6 +46,7 @@ pub use image_info::ImageInfoTool;
pub use memory_forget::MemoryForgetTool;
pub use memory_recall::MemoryRecallTool;
pub use memory_store::MemoryStoreTool;
pub use pushover::PushoverTool;
pub use schedule::ScheduleTool;
pub use screenshot::ScreenshotTool;
pub use shell::ShellTool;
@ -141,6 +143,7 @@ pub fn all_tools_with_runtime(
security.clone(),
workspace_dir.to_path_buf(),
)),
Box::new(PushoverTool::new(workspace_dir.to_path_buf())),
];
if browser_config.enabled {