shengsheng90/DSH-taskboard

Native local Taskboard plugin for DeepSeek Harness. SQLite-backed projects, Agent claim/review, and a native Web UI — no iframe, no second chat runtime.

DSH Taskboard – DeepSeek Harness용 네이티브 태스크 관리 플러그인

무엇인가요

  • DeepSeek Harness AI 에이전트 플랫폼에 완전한 기능의 Taskboard UI와 API를 추가하는 플러그인 (@shengsheng/dsh-taskboard)입니다.
  • 모든 데이터는 로컬 SQLite 파일 (taskboard.sqlite)과 첨부 파일 폴더에 저장되며, 외부 서비스가 필요하지 않습니다.
  • Harness 웹 클라이언트 내에 사이드바 버튼/오버레이 페이지와 헤드리스 JSON CLI (dsh-taskboard)를 모두 제공합니다.
  • 에이전트가 턴 중에 호출할 수 있는 인프로세스 도구 (taskboard_*)를 노출하여, 태스크 목록 조회, 할당, 댓글 작성, 리뷰 제출 기능을 가능하게 합니다.

주요 기능

기능 제공되는 기능
프로젝트 및 태스크 계층 프로젝트는 짧은 키(예: DSH)를 가지며 DSH-42와 같은 가독성 높은 ID를 생성합니다. 태스크는 상태(backlog → todo → in_progress → in_review → done)를 가지며, blockedcanceled도 지원합니다.
인간 전용 작업 승인, 수락, 반려, 아카이브, 취소, 강제 인수, 영구 삭제 – UI 또는 CLI에서만 가능하며, 에이전트 도구를 통해 절대 불가능합니다.
에이전트 워크플로우 에이전트는 todo 태스크를 할당하고 관련 워크스페이스에서 작업한 후 리뷰를 제출합니다. 인간은 나중에 태스크를 done으로 수락해야 합니다.
자동화 프로젝트별 자동화(간격, 모델 프리셋, 워커 수, 할당량 정책)를 정의할 수 있습니다. 스케줄러는 적합한 todo 항목을 할당하고 에이전트 세션을 in_review까지 진행시킵니다.
CLI dsh-taskboard는 프로젝트, 태스크, 관계, 첨부, 워크플로우, 스토리지 진단에 대한 JSON 출력 명령어를 제공합니다. 종료 코드로 성공, 사용 오류, 스토리지 문제, 도메인 오류, 낙관적 충돌(TASK_STALE_VERSION)을 구분합니다.
구성 cordis.patch.yml, 환경 변수, 프로파일 오버라이드를 통해 경로, 페이지네이션 제한, 첨부 크기 제한, 워커 제한, 갱신 간격을 조정할 수 있습니다.
보안 및 복구 열기 시 SQLite 무결성 검사, 명시적 백업 지침, 상세한 보안 설계 문서 제공.

설치 흐름 (Harness 운영자용)

  1. 실행 중인 Harness 감지 – 웹 리스너 포트(기본값 3080)와 작업 디렉터리를 확인합니다.
  2. 플러그인 빌드 – 리포지토리 복제 후 pnpm install && pnpm build && pnpm pack 실행. 이로써 lib/ 파일과 shengsheng-dsh-taskboard-<version>.tgz 타르볼이 생성됩니다.
  3. 프로필에 플러그인 추가 – Harness CLI 사용: dsh plugin --profile web add -w /path/to/tgz (pnpm 워크스페이스에서는 -w 플래그가 필수).
  4. 구성 검증dsh --profile web --dump-config 명령어로 # == @shengsheng/dsh-taskboard 레이어가 표시되어야 합니다.
  5. Harness 재시작 – 플러그인 추가 후 UI 번들 로드를 위해 Harness 프로세스를 재시작합니다.
  6. 활성화 확인 – Harness 루트에 대한 GET 요청에 @shengsheng/dsh-taskboard가 포함되어야 하며, 클라이언트 번들이 접근 가능해야 합니다(200 응답). 사이드바에 Taskboard 버튼이 표시됩니다.

UI 사용법

  • 사이드바 푸터의 Taskboard 버튼을 클릭합니다.
  • 프로젝트 생성(짧은 키 선택) 후 태스크 생성.
  • 인간 사용자는 태스크를 backlog → todo로 이동(승인). 에이전트는 todo 항목을 할당하고 작업한 후 in_review로 제출. 인간이 최종적으로 done으로 수락합니다.
  • UI는 Board, List, Gantt, Workflow, Dashboard 뷰를 제공하며, 현재 Harness 로케일을 존중합니다.

CLI 사용법

# 프로젝트 목록
 dsh-taskboard --database .dsh/taskboard.sqlite project list
# 프로젝트 생성
 dsh-taskboard --database .dsh/taskboard.sqlite project create --key DSH --name "My project"
# 태스크 생성
 dsh-taskboard --database .dsh/taskboard.sqlite task create \
    --project <project-id> --title "Ship the plugin"
# 태스크 할당 (에이전트는 도구 사용, 인간은 CLI로 가능)
 dsh-taskboard task claim --task <opaque-id> --expected_version 1

모든 명령어는 구조화된 JSON을 출력하여 스크립트로 쉽게 파이프할 수 있습니다.

에이전트 도구 (실행 중인 Harness 에이전트에서 호출)

  • taskboard_list – 특정 프로젝트의 태스크 목록 조회.
  • taskboard_get – 태스크 전체 세부 정보 가져오기.
  • taskboard_claim – 낙관적 버전 체크를 포함한 todo 태스크 할당.
  • taskboard_comment – 마크다운 형식의 댓글 추가.
  • taskboard_submit_review – 소유 중인 in_progress 태스크를 in_review로 이동.
  • taskboard_block, taskboard_release_claim, taskboard_relate – 추가 라이프사이클 제어.

왜 중요한가요

  • Harness 에이전트 런타임과 밀접하게 통합된 네이티브이고 오프라인 우선의 태스크 추적 시스템을 제공하여 별도의 프로젝트 관리 도구를 필요로 하지 않습니다.
  • 명확한 분리: 에이전트는 태스크 작업만 가능하며, 인간이 최종 승인 권한을 유지합니다. 이는 안전한 AI 지원 개발에 필수적입니다.
  • SQLite 기반 설계로 시스템은 가볍고 이식 가능하며, 온프레미스 또는 엣지 배포용 Harness에 적합합니다.

라이선스

  • Apache-2.0 (LICENSE 참조).

위 모든 세부 정보는 리포지토리의 README에서 직접 가져왔으며, 추가 기능은 추측되지 않았습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트