mirror of
https://github.com/multica-ai/multica.git
synced 2026-07-28 22:17:48 +02:00
* feat(daemon): inject project description into the agent brief Issues bound to a project only surfaced the project title in the runtime brief; the project description (durable, project-wide context the owner sets) was loaded but dropped. Carry it end-to-end: - claim handler reads proj.Description onto the response (issue-bound and quick-create paths) - new ProjectDescription field on AgentTaskResponse, daemon Task, and TaskContextForEnv - rendered in the brief's `## Project Context` section and written to .multica/project/resources.json as project_description Empty descriptions render nothing (no extra heading). Updated the projects-and-resources built-in skill docs in the same change. MUL-3465 Co-authored-by: multica-agent <github@multica.ai> * feat(projects): clarify project description is injected as agent context The project description is now durable context injected into every task's brief, but the UI still presented it as a plain "Description" field, so existing descriptions could silently become agent input. Add a hint under the description editor on the project detail page and in the create-project modal, in all four locales, stating it is shared with agents as context for every task in the project. No data-semantics change. Addresses review feedback on PR #4395. MUL-3465 Co-authored-by: multica-agent <github@multica.ai> * test(handler): assert project description flows through task claim The execenv tests cover brief rendering, but nothing pinned the claim handler boundary where proj.Description is read onto the response. Add two tests — issue-bound and quick-create paths — so a regression in that assignment fails loudly instead of silently dropping the description. Addresses review feedback on PR #4395. MUL-3465 Co-authored-by: multica-agent <github@multica.ai> --------- Co-authored-by: J <j@multica.ai> Co-authored-by: multica-agent <github@multica.ai>
149 lines
6.4 KiB
JSON
149 lines
6.4 KiB
JSON
{
|
|
"page": {
|
|
"title": "프로젝트",
|
|
"new_project": "새 프로젝트",
|
|
"empty": "아직 프로젝트가 없습니다",
|
|
"create_first": "첫 프로젝트 만들기",
|
|
"view_compact": "간결하게",
|
|
"view_comfortable": "넓게",
|
|
"search_placeholder": "프로젝트 검색...",
|
|
"no_search_results": "검색 결과가 없습니다",
|
|
"view_table": "테이블",
|
|
"view_cards": "카드",
|
|
"row_menu": "프로젝트 작업",
|
|
"pin": "사이드바에 고정",
|
|
"unpin": "고정 해제",
|
|
"delete": "삭제",
|
|
"no_matches": "일치하는 프로젝트가 없습니다",
|
|
"selected_one": "{{count}}개 선택됨",
|
|
"selected_other": "{{count}}개 선택됨",
|
|
"clear_selection": "선택 해제"
|
|
},
|
|
"table": {
|
|
"name": "이름",
|
|
"priority": "우선순위",
|
|
"status": "상태",
|
|
"progress": "진행률",
|
|
"lead": "리드",
|
|
"created": "생성일",
|
|
"issues": "이슈 수"
|
|
},
|
|
"status": {
|
|
"planned": "계획됨",
|
|
"in_progress": "진행 중",
|
|
"paused": "일시 중지",
|
|
"completed": "완료됨",
|
|
"cancelled": "취소됨"
|
|
},
|
|
"priority": {
|
|
"urgent": "긴급",
|
|
"high": "높음",
|
|
"medium": "보통",
|
|
"low": "낮음",
|
|
"none": "우선순위 없음"
|
|
},
|
|
"lead": {
|
|
"no_lead": "리드 없음",
|
|
"assign_placeholder": "리드 지정...",
|
|
"members_group": "멤버",
|
|
"agents_group": "에이전트",
|
|
"no_results": "결과 없음"
|
|
},
|
|
"relative_date": {
|
|
"today": "오늘",
|
|
"one_day_ago": "1일 전",
|
|
"days_ago": "{{count}}일 전",
|
|
"months_ago": "{{count}}개월 전"
|
|
},
|
|
"detail": {
|
|
"not_found": "프로젝트를 찾을 수 없습니다",
|
|
"breadcrumb_fallback": "프로젝트",
|
|
"title_placeholder": "프로젝트 제목",
|
|
"icon_tooltip": "아이콘 변경",
|
|
"pin_tooltip": "사이드바에 고정",
|
|
"unpin_tooltip": "사이드바 고정 해제",
|
|
"sidebar_tooltip": "사이드바 열기/닫기",
|
|
"copy_link": "링크 복사",
|
|
"delete_action": "프로젝트 삭제",
|
|
"section_properties": "속성",
|
|
"section_progress": "진행률",
|
|
"section_description": "설명",
|
|
"description_placeholder": "설명 추가...",
|
|
"description_hint": "이 프로젝트의 모든 작업에서 컨텍스트로 에이전트에게 공유됩니다.",
|
|
"empty_issues_title": "연결된 이슈가 없습니다",
|
|
"empty_issues_hint": "새 이슈를 만들거나 기존 이슈를 이 프로젝트에 할당하세요.",
|
|
"empty_issues_new_button": "새 이슈",
|
|
"no_issues_yet": "아직 이슈가 없습니다",
|
|
"toast_link_copied": "링크를 복사했습니다",
|
|
"toast_project_deleted": "프로젝트를 삭제했습니다",
|
|
"toast_move_issue_failed": "이슈를 이동하지 못했습니다"
|
|
},
|
|
"resources": {
|
|
"section_header": "리소스",
|
|
"empty": "첨부된 리소스가 없습니다.",
|
|
"add_button": "리소스 추가",
|
|
"popover_title": "GitHub 저장소 연결",
|
|
"repos_search_placeholder": "저장소 검색...",
|
|
"repos_search_empty": "검색 결과와 일치하는 저장소가 없습니다.",
|
|
"attached_badge": "연결됨",
|
|
"remove_tooltip": "제거",
|
|
"url_placeholder": "https://github.com/owner/repo or git@github.com:owner/repo.git",
|
|
"url_submit": "추가",
|
|
"toast_attached": "저장소를 연결했습니다",
|
|
"toast_attach_failed": "연결하지 못했습니다",
|
|
"toast_removed": "리소스를 제거했습니다",
|
|
"toast_remove_failed": "리소스를 제거하지 못했습니다",
|
|
"add_local_directory_button": "로컬 디렉터리 추가",
|
|
"local_daemon_offline_hint": "이 기기의 디렉터리를 연결하려면 로컬 데몬을 시작하세요.",
|
|
"local_daemon_already_attached_hint": "이 기기에는 이미 로컬 디렉터리가 연결되어 있습니다. 새로 추가하려면 먼저 기존 항목을 제거하세요.",
|
|
"local_rename_tooltip": "이름 변경",
|
|
"local_rename_label": "로컬 디렉터리 라벨",
|
|
"local_no_daemon_tooltip": "로컬 데몬이 아직 ID를 보고하지 않아 에이전트가 이 디렉터리를 열 수 없습니다.",
|
|
"local_other_machine_tooltip": "이 디렉터리를 등록한 기기에서만 사용할 수 있습니다.",
|
|
"chat_hint_prefix": "에이전트가 다음 위치에서 직접 작업합니다:",
|
|
"toast_local_attached": "로컬 디렉터리를 연결했습니다",
|
|
"toast_local_renamed": "이름을 변경했습니다",
|
|
"toast_local_rename_failed": "이름을 변경하지 못했습니다",
|
|
"toast_local_pick_failed": "디렉터리를 선택하지 못했습니다",
|
|
"toast_local_already_attached": "이 디렉터리는 이미 이 기기의 프로젝트에 연결되어 있습니다.",
|
|
"toast_local_daemon_already_attached": "이 기기에는 이미 이 프로젝트의 로컬 디렉터리가 연결되어 있습니다. 새로 추가하려면 먼저 기존 항목을 제거하세요.",
|
|
"toast_local_daemon_not_running": "로컬 데몬이 실행 중이 아닙니다.",
|
|
"local_validate_not_absolute": "절대 경로를 선택하세요.",
|
|
"local_validate_not_found": "경로가 존재하지 않습니다.",
|
|
"local_validate_not_a_directory": "디렉터리가 아닙니다.",
|
|
"local_validate_not_readable": "디렉터리를 읽을 수 없습니다.",
|
|
"local_validate_not_writable": "디렉터리에 쓸 수 없습니다.",
|
|
"local_validate_unsupported": "로컬 디렉터리는 데스크톱 앱에서만 선택할 수 있습니다."
|
|
},
|
|
"delete_dialog": {
|
|
"title": "프로젝트 삭제",
|
|
"description": "프로젝트가 삭제됩니다. 이슈는 삭제되지 않지만 프로젝트 연결은 해제됩니다.",
|
|
"confirm": "삭제",
|
|
"cancel": "취소"
|
|
},
|
|
"picker": {
|
|
"no_project": "프로젝트 없음",
|
|
"remove": "프로젝트에서 제거",
|
|
"empty": "아직 프로젝트가 없습니다"
|
|
},
|
|
"chip": {
|
|
"fallback_label": "프로젝트"
|
|
},
|
|
"toolbar": {
|
|
"result_count_title": "일치하는 프로젝트 / 전체 프로젝트",
|
|
"filter_label": "필터",
|
|
"filter_active_count_one": "필터 {{count}}개",
|
|
"filter_active_count_other": "필터 {{count}}개",
|
|
"clear_filters": "필터 지우기",
|
|
"section_status": "상태",
|
|
"section_priority": "우선순위",
|
|
"section_lead": "리드",
|
|
"display": "표시",
|
|
"sort_by": "정렬",
|
|
"direction_asc": "오름차순",
|
|
"direction_desc": "내림차순",
|
|
"section_columns": "열",
|
|
"view": "보기"
|
|
}
|
|
}
|