Files
Memoh/docs/task-mgmt-tools-PR.md

33 lines
1020 B
Markdown

## Memoh Task Management Tools PR (feat-task-mgmt)
### Protobuf (add to proto/bridge.proto)
```protobuf
message ListTasksRequest { string session_id = 1; }
message Task { string id = 1; string status = 3; int64 pid = 4; string command = 5; /* etc */ }
service TaskService {
rpc ListTasks(ListTasksRequest) returns (ListTasksResponse);
rpc KillTask(KillTaskRequest) returns (KillTaskResponse);
rpc TaskLogs(TaskLogsRequest) returns (stream TaskLogsResponse);
}
```
### DB Schema (migrations)
```sql
ALTER TABLE tasks ADD COLUMN exec_id VARCHAR(255) NULL, ADD COLUMN pid INTEGER NULL;
```
### server.go Diff (key impl)
```go
func (s *server) ListTasks(...) (*pb.ListTasksResponse, error) {
tasks, _ := listTasksBySession(s.db, req.SessionId)
// map + exec_status
}
func (s *server) KillTask(...) { killTask(s.db, req.TaskId) }
```
### TOOLS.md
Add:
- list_tasks(session_id?): List tasks.
示例 prompt: \"list_tasks 检查任务,kill_task 旧 exec。\"
Full spawn details above. Ready for implement/merge.