@tocca-systems/twp-cli 0.96.0 → 0.96.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.public.md +10 -0
- package/command-model/_routes.json +303 -5
- package/command-model/accounting-master.json +22 -0
- package/command-model/agent-loop.json +33 -3
- package/command-model/ai-token-usage.json +1 -1
- package/command-model/ai-training-attempt.json +9 -0
- package/command-model/ai-training-program.json +7 -0
- package/command-model/analysis-alert-threshold.json +7 -0
- package/command-model/analysis-page-access-rule.json +2 -2
- package/command-model/analysis.json +2 -1
- package/command-model/announcement.json +4 -0
- package/command-model/attendance-report-reason-detail.json +1 -1
- package/command-model/attendance-report-reason.json +1 -1
- package/command-model/attendance-report.json +1 -1
- package/command-model/audit-log.json +2 -2
- package/command-model/badge.json +2 -0
- package/command-model/budget.json +4 -4
- package/command-model/cash-flow.json +6 -0
- package/command-model/chat-channel.json +8 -3
- package/command-model/chat-mention-group.json +1 -1
- package/command-model/chat-message.json +17 -2
- package/command-model/chat-presence.json +11 -0
- package/command-model/chat-scheduled-message.json +9 -0
- package/command-model/chat.json +6 -0
- package/command-model/cli-tool-catalog.json +6 -0
- package/command-model/commuting-expense.json +1 -0
- package/command-model/company.json +3 -2
- package/command-model/container-agent-schedule.json +14 -0
- package/command-model/contract.json +4 -3
- package/command-model/customer-people.json +1 -1
- package/command-model/department.json +3 -3
- package/command-model/deposit.json +2 -1
- package/command-model/device-token.json +7 -0
- package/command-model/domain-knowledge-doc.json +3 -3
- package/command-model/dynamo-attachment.json +1 -0
- package/command-model/dynamo-inquiry.json +3 -1
- package/command-model/dynamo-support.json +1 -1
- package/command-model/estimate-case-document.json +3 -2
- package/command-model/estimate.json +11 -5
- package/command-model/evaluation.json +3 -3
- package/command-model/expense-report.json +19 -0
- package/command-model/expense-settings.json +1 -1
- package/command-model/faq.json +3 -2
- package/command-model/goal-sheet.json +5 -4
- package/command-model/google-auth.json +1 -1
- package/command-model/hearing.json +1 -1
- package/command-model/hr-checklist.json +1 -0
- package/command-model/index.json +81 -41
- package/command-model/inquiry-routing.json +3 -1
- package/command-model/invoice.json +3 -3
- package/command-model/license-type.json +2 -2
- package/command-model/master-support.json +3 -3
- package/command-model/master-tenant.json +4 -4
- package/command-model/media-file.json +3 -2
- package/command-model/media-folder.json +3 -3
- package/command-model/meeting-template.json +2 -2
- package/command-model/meeting.json +6 -4
- package/command-model/microsoft-auth.json +1 -1
- package/command-model/microsoft-graph-proxy-v2.json +42 -0
- package/command-model/my-ai-training.json +7 -0
- package/command-model/note.json +1 -1
- package/command-model/notification.json +1 -1
- package/command-model/organization-announcement.json +3 -2
- package/command-model/private-agent-loop.json +21 -6
- package/command-model/private-task.json +4 -2
- package/command-model/profit-analysis.json +2 -2
- package/command-model/project-evaluation.json +3 -3
- package/command-model/project-inventory-continuation.json +6 -0
- package/command-model/project-inventory-overview.json +6 -0
- package/command-model/project-inventory-request.json +7 -0
- package/command-model/project-inventory-settings.json +7 -0
- package/command-model/project-member.json +3 -3
- package/command-model/project-status-report-project.json +6 -0
- package/command-model/project-status-report-settings.json +7 -0
- package/command-model/project-task-attachment.json +7 -0
- package/command-model/project-task-category.json +2 -2
- package/command-model/project-task-label.json +2 -2
- package/command-model/project-task-link.json +3 -2
- package/command-model/project-task-milestone.json +2 -2
- package/command-model/project-task-status.json +2 -2
- package/command-model/project-task-type.json +2 -2
- package/command-model/project-task-version.json +2 -2
- package/command-model/project-task-watcher.json +2 -2
- package/command-model/project-task.json +3 -3
- package/command-model/project-team-chat.json +8 -0
- package/command-model/project.json +5 -5
- package/command-model/purchase-ai-field-mapping.json +2 -2
- package/command-model/purchase-document.json +1 -0
- package/command-model/purchase.json +2 -2
- package/command-model/receivable.json +1 -1
- package/command-model/recreation-club.json +11 -0
- package/command-model/report.json +5 -5
- package/command-model/retrospective.json +1 -1
- package/command-model/role-template.json +1 -1
- package/command-model/sales-default-recipient-set.json +10 -0
- package/command-model/sales-pdf.json +2 -1
- package/command-model/sales-recent-recipient.json +6 -0
- package/command-model/sales-setting.json +11 -0
- package/command-model/skill-analytics.json +1 -1
- package/command-model/skill-evaluation-record.json +1 -0
- package/command-model/skill-micro-feedback.json +1 -0
- package/command-model/skill.json +1 -1
- package/command-model/sns-connection.json +10 -0
- package/command-model/staff-kpi-setting.json +1 -1
- package/command-model/staff-kpi.json +1 -0
- package/command-model/staffing-board-cell.json +7 -0
- package/command-model/staffing-board-note.json +8 -0
- package/command-model/staffing-board-snapshot.json +10 -0
- package/command-model/staffing-board-tentative-assignment.json +12 -0
- package/command-model/staffing-board-tentative-import.json +7 -0
- package/command-model/staffing-plan.json +4 -2
- package/command-model/statutory-rate-set.json +14 -0
- package/command-model/supplier-payment.json +2 -2
- package/command-model/survey-tracker.json +1 -1
- package/command-model/survey.json +1 -0
- package/command-model/teams-link.json +9 -0
- package/command-model/tenant-rate-override.json +8 -0
- package/command-model/tenant-settings.json +2 -2
- package/command-model/token.json +1 -1
- package/command-model/training-attendance.json +1 -1
- package/command-model/training-session.json +1 -1
- package/command-model/unified-search.json +1 -1
- package/command-model/user-api-key.json +2 -2
- package/command-model/user-contract-type.json +2 -2
- package/command-model/user-group.json +1 -0
- package/command-model/user-invitation.json +2 -2
- package/command-model/user-list-display-setting.json +7 -0
- package/command-model/user-list-item-order.json +7 -0
- package/command-model/user-management.json +3 -3
- package/command-model/user-recent-work.json +8 -0
- package/command-model/video-generation.json +2 -2
- package/command-model/wiki-collection.json +2 -2
- package/command-model/wiki.json +3 -1
- package/command-model/worker-agent-run.json +1 -0
- package/command-model/worker-agent.json +3 -3
- package/command-model/workflow-approval-delegation.json +1 -0
- package/command-model/workflow-approval.json +1 -0
- package/command-model/workflow-attachment-pdf-preview.json +6 -0
- package/command-model/workflow-comment-attachment.json +8 -0
- package/command-model/workflow-estimate-input.json +9 -0
- package/command-model/workflow-instance.json +3 -2
- package/command-model/workflow.json +3 -2
- package/dist/{app-4GGGNEAQ.js → app-JXSWS4S5.js} +32 -31
- package/dist/cli.js +2 -2
- package/package.json +1 -1
- package/command-model/prospect-activity.json +0 -10
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"domain": "workflow-instance",
|
|
3
3
|
"operations": [
|
|
4
|
-
{"name":"apply","domain":"workflow-instance","operationId":"workflowInstance.apply","method":"POST","path":"/v2/workflows/instances/{id}/apply","summary":"申請を実行","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"title":{"type":"string","maxLength":255},"form_data":{"type":"array","items":{"type":"string"}},"comment":{"type":["string","null"],"maxLength":2000}}}},"resultPath":"","risk":"write","aliases":[]},
|
|
4
|
+
{"name":"apply","domain":"workflow-instance","operationId":"workflowInstance.apply","method":"POST","path":"/v2/workflows/instances/{id}/apply","summary":"申請を実行","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"title":{"type":"string","maxLength":255},"form_data":{"type":"array","items":{"type":"string"}},"comment":{"type":["string","null"],"maxLength":2000},"extra_approvers":{"type":["array","null"],"items":{"type":"object","properties":{"user_id":{"type":"string"},"anchor_step_no":{"type":"integer","minimum":1},"placement":{"type":"string","enum":["before","after"]}},"required":["user_id","anchor_step_no","placement"]}}}}},"resultPath":"","risk":"write","aliases":[]},
|
|
5
|
+
{"name":"comment","domain":"workflow-instance","operationId":"workflowInstance.comment","method":"POST","path":"/v2/workflows/instances/{id}/comments","summary":"承認・差し戻し等の操作をせずに、申請へコメントだけを残す","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"comment":{"type":"string","maxLength":2000},"mentioned_user_ids":{"type":"array","items":{"type":["string","null"],"maxLength":200},"maxItems":50},"attachment_ids":{"type":"array","items":{"type":"string","maxLength":200},"maxItems":10}},"required":["comment"],"title":"StoreWorkflowInstanceCommentRequest"}},"resultPath":null,"risk":"write","aliases":[]},
|
|
5
6
|
{"name":"create","domain":"workflow-instance","operationId":"workflowInstance.store","method":"POST","path":"/v2/workflows/instances","summary":"申請を作成(下書き)","pathParams":[],"queryParams":[],"body":{"schema":{"type":"object","properties":{"workflow_id":{"type":"string"},"title":{"type":"string","maxLength":255},"form_data":{"type":"array","items":{"type":"string"}}},"required":["workflow_id"]}},"resultPath":"","risk":"write","aliases":[]},
|
|
6
7
|
{"name":"delete","domain":"workflow-instance","operationId":"workflowInstance.destroy","method":"DELETE","path":"/v2/workflows/instances/{id}","summary":"申請を削除(下書きまたは差し戻し状態)","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":null,"resultPath":"","risk":"destructive","aliases":[]},
|
|
7
8
|
{"name":"get","domain":"workflow-instance","operationId":"workflowInstance.show","method":"GET","path":"/v2/workflows/instances/{id}","summary":"申請詳細を取得","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":null,"risk":"read","aliases":[]},
|
|
8
9
|
{"name":"history","domain":"workflow-instance","operationId":"workflowInstance.history","method":"GET","path":"/v2/workflows/history","summary":"承認履歴一覧を取得(ページネーション対応)","pathParams":[],"queryParams":[{"name":"workflow_id","type":["string","null"],"required":false,"description":"ワークフロー(申請の種類)IDで絞り込む","source":"spec"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"},{"name":"status","type":"string","required":false,"description":"申請の状態で絞り込む","source":"spec"},{"name":"keyword","type":"string","required":false,"description":"キーワードで絞り込む","source":"spec"},{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"}],"body":null,"resultPath":"items","risk":"read","aliases":[]},
|
|
9
|
-
{"name":"list","domain":"workflow-instance","operationId":"workflowInstance.index","method":"GET","path":"/v2/workflows/instances","summary":"自分の申請一覧を取得(ページネーション対応)","pathParams":[],"queryParams":[{"name":"workflow_id","type":["string","null"],"required":false,"description":"ワークフロー(申請の種類)IDで絞り込む","source":"spec"},{"name":"status","type":"string","required":false,"description":"申請の状態で絞り込む","source":"spec"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"},{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"}],"body":null,"resultPath":"items","risk":"read","aliases":[]},
|
|
10
|
+
{"name":"list","domain":"workflow-instance","operationId":"workflowInstance.index","method":"GET","path":"/v2/workflows/instances","summary":"自分の申請一覧を取得(ページネーション対応)","pathParams":[],"queryParams":[{"name":"workflow_id","type":["string","null"],"required":false,"description":"ワークフロー(申請の種類)IDで絞り込む","source":"spec"},{"name":"workflow_ids","type":["string","null"],"required":false,"source":"spec"},{"name":"status","type":"string","required":false,"description":"申請の状態で絞り込む","source":"spec"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"},{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"}],"body":null,"resultPath":"items","risk":"read","aliases":[]},
|
|
10
11
|
{"name":"update","domain":"workflow-instance","operationId":"workflowInstance.update","method":"PUT","path":"/v2/workflows/instances/{id}","summary":"申請を更新(下書き状態のみ)","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"title":{"type":"string","maxLength":255},"form_data":{"type":"array","items":{"type":"string"}}}}},"resultPath":"","risk":"write","aliases":[]}
|
|
11
12
|
]
|
|
12
13
|
}
|
|
@@ -3,12 +3,13 @@
|
|
|
3
3
|
"operations": [
|
|
4
4
|
{"name":"applicable-by-category","domain":"workflow","operationId":"workflow.applicableByCategory","method":"GET","path":"/v2/workflows/applicable/{category}","summary":"カテゴリ別の申請可能なワークフロー一覧を取得(is_hidden無視)","pathParams":[{"name":"category","type":"string","required":true,"source":"spec"}],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"list","risk":"read","aliases":[]},
|
|
5
5
|
{"name":"applicable-list","domain":"workflow","operationId":"workflow.applicableList","method":"GET","path":"/v2/workflows/applicable","summary":"申請可能なワークフロー一覧を取得","pathParams":[],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"list","risk":"read","aliases":[]},
|
|
6
|
+
{"name":"applicant-profile","domain":"workflow","operationId":"workflow.applicantProfile","method":"GET","path":"/v2/workflows/applicant-profile","summary":"申請者本人の自動入力値を取得する","pathParams":[],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"","risk":"read","aliases":[]},
|
|
6
7
|
{"name":"approver-preview","domain":"workflow","operationId":"workflow.approverPreview","method":"POST","path":"/v2/workflows/approver-preview","summary":"承認者条件のプレビュー: 現時点で該当する承認者を解決して返す","pathParams":[],"queryParams":[],"body":{"schema":{"type":"object","properties":{"approver_condition_set":{"type":"object","properties":{"condition_groups":{"type":"array","items":{"type":"string"}}}}},"required":["approver_condition_set"]}},"resultPath":"","risk":"write","aliases":[]},
|
|
7
|
-
{"name":"create","domain":"workflow","operationId":"workflow.store","method":"POST","path":"/v2/workflows","summary":"ワークフロー定義を作成","pathParams":[],"queryParams":[],"body":{"schema":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_description":{"type":["string","null"],"maxLength":2000},"default_title":{"type":["string","null"],"maxLength":255},"status":{"type":"string","enum":["active","inactive","draft"]},"defined_category":{"type":["string","null"],"maxLength":100},"form_definition":{"type":"array","items":{"type":"string"}},"target_condition_set":{"type":"array","items":{"type":"string"}},"valid_from":{"type":["string","null"],"format":"date"},"valid_to":{"type":["string","null"],"format":"date"},"sort":{"type":"integer","minimum":0},"is_hidden":{"type":"boolean"},"auto_skip_same_approver":{"type":"boolean"},"view_permission_condition_set":{"type":"array","items":{"type":"string"}},"equipment_category_ids":{"type":"array","items":{"type":"string","maxLength":36}},"steps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_condition_set":{"type":"array","items":{"type":"string"},"minItems":1},"notification_usergroup_ids":{"type":"array","items":{"type":"string"}},"is_final_step":{"type":"boolean"},"fallback_approver_user_id":{"type":["string","null"],"maxLength":255},"reminder_days":{"type":["integer","null"],"minimum":1,"maximum":365},"escalation_days":{"type":["integer","null"],"minimum":1,"maximum":365},"prohibit_same_approver":{"type":"boolean"}},"required":["name","approver_condition_set"]}}},"required":["name"]}},"resultPath":"","risk":"write","aliases":[]},
|
|
8
|
+
{"name":"create","domain":"workflow","operationId":"workflow.store","method":"POST","path":"/v2/workflows","summary":"ワークフロー定義を作成","pathParams":[],"queryParams":[],"body":{"schema":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_description":{"type":["string","null"],"maxLength":2000},"default_title":{"type":["string","null"],"maxLength":255},"status":{"type":"string","enum":["active","inactive","draft"]},"defined_category":{"type":["string","null"],"maxLength":100},"form_definition":{"type":"array","items":{"type":"string"}},"target_condition_set":{"type":"array","items":{"type":"string"}},"valid_from":{"type":["string","null"],"format":"date"},"valid_to":{"type":["string","null"],"format":"date"},"sort":{"type":"integer","minimum":0},"is_hidden":{"type":"boolean"},"auto_skip_same_approver":{"type":"boolean"},"require_pre_submit_ai_review":{"type":"boolean"},"allow_extra_approvers":{"type":"boolean"},"view_permission_condition_set":{"type":"array","items":{"type":"string"}},"equipment_category_ids":{"type":"array","items":{"type":"string","maxLength":36}},"steps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_condition_set":{"type":"array","items":{"type":"string"},"minItems":1},"notification_usergroup_ids":{"type":"array","items":{"type":"string"}},"is_final_step":{"type":"boolean"},"fallback_approver_user_id":{"type":["string","null"],"maxLength":255},"reminder_days":{"type":["integer","null"],"minimum":1,"maximum":365},"escalation_days":{"type":["integer","null"],"minimum":1,"maximum":365},"prohibit_same_approver":{"type":"boolean"},"apply_condition":{"type":["object","null"],"properties":{"metric":{"type":"string","maxLength":100},"operator":{"type":"string","enum":["gte","lt"]},"value":{"type":"integer","minimum":0}}}},"required":["name","approver_condition_set"]}}},"required":["name"]}},"resultPath":"","risk":"write","aliases":[]},
|
|
8
9
|
{"name":"delete","domain":"workflow","operationId":"workflow.destroy","method":"DELETE","path":"/v2/workflows/{id}","summary":"ワークフロー定義を削除","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":null,"resultPath":"","risk":"destructive","aliases":[]},
|
|
9
10
|
{"name":"get","domain":"workflow","operationId":"workflow.show","method":"GET","path":"/v2/workflows/{id}","summary":"ワークフロー定義詳細を取得","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"","risk":"read","aliases":[]},
|
|
10
11
|
{"name":"list","domain":"workflow","operationId":"workflow.index","method":"GET","path":"/v2/workflows","summary":"ワークフロー定義一覧を取得","pathParams":[],"queryParams":[{"name":"status","type":"string","required":false,"source":"spec"},{"name":"category","type":"string","required":false,"source":"spec"},{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"list","risk":"read","aliases":[]},
|
|
11
12
|
{"name":"recalculate-candidates","domain":"workflow","operationId":"workflow.recalculateCandidates","method":"POST","path":"/v2/workflows/{id}/recalculate-candidates","summary":"承認候補者を再計算する","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":null,"resultPath":"","risk":"write","aliases":[]},
|
|
12
|
-
{"name":"update","domain":"workflow","operationId":"workflow.update","method":"PUT","path":"/v2/workflows/{id}","summary":"ワークフロー定義を更新","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_description":{"type":["string","null"],"maxLength":2000},"default_title":{"type":["string","null"],"maxLength":255},"status":{"type":"string","enum":["active","inactive","draft"]},"defined_category":{"type":["string","null"],"maxLength":100},"form_definition":{"type":"array","items":{"type":"string"}},"target_condition_set":{"type":"array","items":{"type":"string"}},"valid_from":{"type":["string","null"],"format":"date"},"valid_to":{"type":["string","null"],"format":"date"},"sort":{"type":"integer","minimum":0},"is_hidden":{"type":"boolean"},"auto_skip_same_approver":{"type":"boolean"},"view_permission_condition_set":{"type":"array","items":{"type":"string"}},"equipment_category_ids":{"type":"array","items":{"type":"string","maxLength":36}},"steps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_condition_set":{"type":"array","items":{"type":"string"},"minItems":1},"notification_usergroup_ids":{"type":"array","items":{"type":"string"}},"is_final_step":{"type":"boolean"},"fallback_approver_user_id":{"type":["string","null"],"maxLength":255},"reminder_days":{"type":["integer","null"],"minimum":1,"maximum":365},"escalation_days":{"type":["integer","null"],"minimum":1,"maximum":365},"prohibit_same_approver":{"type":"boolean"}},"required":["name","approver_condition_set"]}}}}},"resultPath":"","risk":"write","aliases":[]}
|
|
13
|
+
{"name":"update","domain":"workflow","operationId":"workflow.update","method":"PUT","path":"/v2/workflows/{id}","summary":"ワークフロー定義を更新","pathParams":[{"name":"id","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_description":{"type":["string","null"],"maxLength":2000},"default_title":{"type":["string","null"],"maxLength":255},"status":{"type":"string","enum":["active","inactive","draft"]},"defined_category":{"type":["string","null"],"maxLength":100},"form_definition":{"type":"array","items":{"type":"string"}},"target_condition_set":{"type":"array","items":{"type":"string"}},"valid_from":{"type":["string","null"],"format":"date"},"valid_to":{"type":["string","null"],"format":"date"},"sort":{"type":"integer","minimum":0},"is_hidden":{"type":"boolean"},"auto_skip_same_approver":{"type":"boolean"},"require_pre_submit_ai_review":{"type":"boolean"},"allow_extra_approvers":{"type":"boolean"},"view_permission_condition_set":{"type":"array","items":{"type":"string"}},"equipment_category_ids":{"type":"array","items":{"type":"string","maxLength":36}},"steps":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","maxLength":255},"approver_condition_set":{"type":"array","items":{"type":"string"},"minItems":1},"notification_usergroup_ids":{"type":"array","items":{"type":"string"}},"is_final_step":{"type":"boolean"},"fallback_approver_user_id":{"type":["string","null"],"maxLength":255},"reminder_days":{"type":["integer","null"],"minimum":1,"maximum":365},"escalation_days":{"type":["integer","null"],"minimum":1,"maximum":365},"prohibit_same_approver":{"type":"boolean"},"apply_condition":{"type":["object","null"],"properties":{"metric":{"type":"string","maxLength":100},"operator":{"type":"string","enum":["gte","lt"]},"value":{"type":"integer","minimum":0}}}},"required":["name","approver_condition_set"]}}}}},"resultPath":"","risk":"write","aliases":[]}
|
|
13
14
|
]
|
|
14
15
|
}
|
|
@@ -1168,7 +1168,7 @@ if(this.alternateScreen){this.writeBestEffort(this.options.stdout,base_exports.e
|
|
|
1168
1168
|
cleanup(){instance.unmount()},clear:instance.clear}};var render_default=render;var getOptions=(stdout={})=>{if(stdout instanceof Stream){return{stdout,stdin:process13.stdin}}return stdout};var getInstance=(stdout,createInstance)=>{const instance=instances_default.get(stdout);if(instance===void 0){const newInstance=createInstance();instances_default.set(stdout,newInstance);return newInstance}process13.stderr.write("Warning: render() was called again for the same stdout before the previous Ink ins\
|
|
1169
1169
|
tance was unmounted. Reusing stdout across multiple render() calls is unsupported. Call unmount() first.\n");return instance};var import_constants3=__toESM(require_constants(),1);var import_react17=__toESM(require_react(),1);function Static(props){const{items,children:render2,style:customStyle}=props;const[index,setIndex]=(0,import_react17.useState)(0);const itemsToRender=(0,import_react17.useMemo)(()=>{return items.slice(index)},[items,index]);(0,import_react17.useLayoutEffect)(()=>{setIndex(items.length)},[items.length]);const children=itemsToRender.map((item,itemIndex)=>{return render2(item,index+itemIndex)});const style=(0,import_react17.useMemo)(()=>({position:"abso\
|
|
1170
1170
|
lute",flexDirection:"column",...customStyle}),[customStyle]);return import_react17.default.createElement("ink-box",{internal_static:true,style},children)}var import_react18=__toESM(require_react(),1);var import_react19=__toESM(require_react(),1);var import_react20=__toESM(require_react(),1);var import_react22=__toESM(require_react(),1);var textDecoder=new TextDecoder;var keyName={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[P":"f1","[Q":"f2","[R":"f3","[S":"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"\
|
|
1171
|
-
pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};var nonAlphanumericKeys=[...Object.values(keyName),"backspace"];var import_react21=__toESM(require_react(),1);var useStdin=()=>(0,import_react21.useContext)(StdinContext_default);var use_stdin_default=useStdin;var import_react23=__toESM(require_react(),1);var import_react24=__toESM(require_react(),1);var useApp=()=>(0,import_react24.useContext)(AppContext_default);var use_app_default=useApp;var import_react25=__toESM(require_react(),1);var import_react26=__toESM(require_react(),1);var import_react27=__toESM(require_react(),1);var import_react28=__toESM(require_react(),1);var import_react29=__toESM(require_react(),1);var import_react30=__toESM(require_react(),1);var import_react31=__toESM(require_react(),1);var import_react32=__toESM(require_react(),1);var import_react33=__toESM(require_react(),1);var
|
|
1171
|
+
pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"};var nonAlphanumericKeys=[...Object.values(keyName),"backspace"];var import_react21=__toESM(require_react(),1);var useStdin=()=>(0,import_react21.useContext)(StdinContext_default);var use_stdin_default=useStdin;var import_react23=__toESM(require_react(),1);var import_react24=__toESM(require_react(),1);var useApp=()=>(0,import_react24.useContext)(AppContext_default);var use_app_default=useApp;var import_react25=__toESM(require_react(),1);var import_react26=__toESM(require_react(),1);var import_react27=__toESM(require_react(),1);var import_react28=__toESM(require_react(),1);var import_react29=__toESM(require_react(),1);var import_react30=__toESM(require_react(),1);var import_react31=__toESM(require_react(),1);var import_react32=__toESM(require_react(),1);var import_react33=__toESM(require_react(),1);var import_react39=__toESM(require_react(),1);var import_react34=__toESM(require_react(),1);import{StringDecoder}from"string_decoder";var ESC3="\x1B";var PASTE_START="\x1B[200~";var PASTE_END="\x1B[201~";var INPUT_MODE_ENABLE="\x1B[?2004h\x1B[>1u";var INPUT_MODE_DISABLE="\x1B[<u\x1B[?2004l";var INCOMPLETE=-1;function describeRaw(raw){return Array.from(raw).map(ch=>{const code=ch.codePointAt(0)??0;if(code===27)return"ESC";if(code===127)return"DEL";if(code===13)return"CR";if(code===10)return"LF";if(code===9)return"TAB";if(code<32)return`^${String.fromCharCode(code+64)}`;return ch}).join(" ")}function hexRaw(raw){return Buffer.from(
|
|
1172
1172
|
raw,"utf8").toString("hex").replace(/(..)/g,"$1 ").trim()}var CSI_FINAL_MAP={A:"up",B:"down",C:"right",D:"left",H:"home",F:"end",Z:"shift-tab"};var CSI_TILDE_MAP={"1":"home","3":"delete","4":"end","7":"home","8":"end"};var SS3_MAP={A:"up",B:"down",C:"right",D:"left",H:"home",F:"end"};var CTRL_CHAR_MAP={c:"ctrl-c",d:"ctrl-d",l:"ctrl-l",r:"ctrl-r",u:"ctrl-u"};var CONTROL_MAP={"":"ctrl-c","":"ctrl-d","\f":"ctrl-l","":"ctrl-r","":"ctrl-u","\r":"enter","\n":"newline"," ":"tab","\x7F":"backspace",
|
|
1173
1173
|
"\b":"backspace"};function isProperPrefix(a,b){return a.length<b.length&&b.startsWith(a)}var KeyDecoder=class{pasteBuffer=null;pending="";get isPasting(){return this.pasteBuffer!==null}hasPending(){return this.pending!==""}decode(chunk){const events=[];let rest=this.pending+chunk;this.pending="";while(rest.length>0){if(this.pasteBuffer!==null){const end=rest.indexOf(PASTE_END);if(end===-1){const carry=trailingPrefixLength(rest,PASTE_END);this.pasteBuffer+=rest.slice(0,rest.length-carry);this.pending=
|
|
1174
1174
|
rest.slice(rest.length-carry);return events}const value=this.pasteBuffer+rest.slice(0,end);this.pasteBuffer=null;events.push({name:"paste",value,raw:PASTE_START+value+PASTE_END});rest=rest.slice(end+PASTE_END.length);continue}if(rest.startsWith(PASTE_START)){this.pasteBuffer="";rest=rest.slice(PASTE_START.length);continue}if(isProperPrefix(rest,PASTE_START)){this.pending=rest;return events}const consumed=this.decodeOne(rest,events);if(consumed===INCOMPLETE){this.pending=rest;return events}rest=rest.
|
|
@@ -1282,23 +1282,24 @@ TERM=",process.env["TERM"]??"(unset)"," \xB7 TERM_PROGRAM=",process.env["TERM_PR
|
|
|
1282
1282
|
Text,{children:[(0,import_jsx_runtime8.jsx)(Text,{color:"cyan",children:ev.name.padEnd(12)}),(0,import_jsx_runtime8.jsxs)(Text,{children:[" ",describeRaw(ev.raw).padEnd(18)]}),(0,import_jsx_runtime8.jsx)(Text,{dimColor:true,children:hexRaw(ev.raw)})]},i))]}),(0,import_jsx_runtime8.jsxs)(Box_default,{flexDirection:"column",marginTop:1,children:[(0,import_jsx_runtime8.jsx)(Text,{bold:true,children:"Shift+Tab \u306E\u5B9F\u6E2C"}),(0,import_jsx_runtime8.jsx)(Text,{children:shiftTab2?`\u691C\u51FA: ${describeRaw(
|
|
1283
1283
|
shiftTab2.raw)}\uFF08${hexRaw(shiftTab2.raw)}\uFF09`:"\u672A\u691C\u51FA \u2014 Shift+Tab \u3092\u62BC\u3057\u3066\u304F\u3060\u3055\u3044"}),!shiftTab2&&tab2?(0,import_jsx_runtime8.jsx)(Text,{color:"yellow",children:"Tab \u306E\u307F\u691C\u51FA\u3002\u3053\u306E\u7AEF\u672B\u306F Shift+Tab \u3092\u7D20\u306E TAB \u3068\u3057\u3066\u9001\u3063\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308A\u307E\u3059\uFF08Alt+M / /mode \u3092\u4F7F\u3063\u3066\u304F\u3060\u3055\u3044\uFF09"}):null]}),(0,import_jsx_runtime8.jsxs)(
|
|
1284
1284
|
Box_default,{flexDirection:"column",marginTop:1,children:[(0,import_jsx_runtime8.jsx)(Text,{bold:true,children:"\u30CD\u30C3\u30C8\u30EF\u30FC\u30AF\uFF08\u30D7\u30ED\u30AD\u30B7 / CA\uFF09"}),diagnostics.map(line=>(0,import_jsx_runtime8.jsxs)(Text,{children:[(0,import_jsx_runtime8.jsx)(Text,{color:"cyan",children:padDisplay(line.label,22)}),(0,import_jsx_runtime8.jsx)(Text,{color:line.warn===true?"yellow":void 0,children:line.value})]},line.label)),caWarn?(0,import_jsx_runtime8.jsx)(Text,{color:"\
|
|
1285
|
-
yellow",children:"\u26A0 TLS \u508D\u53D7\u30D7\u30ED\u30AD\u30B7\u914D\u4E0B\u3067\u306F NODE_EXTRA_CA_CERTS \u306B\u30D7\u30ED\u30AD\u30B7\u306E CA \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08Node \u8D77\u52D5\u6642\u306B\u3057\u304B\u8AAD\u307E\u308C\u306A\u3044\u305F\u3081\u3001\u8A2D\u5B9A\u5F8C\u306B twp \u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\uFF09"}):null]}),(0,import_jsx_runtime8.jsx)(Text,{dimColor:true,children:"Esc \u3067\u623B\u308B"})]})}var import_react37=__toESM(require_react(),1);function useTerminalSize(){const read=()=>({rows:process.stdout.rows||24,columns:process.stdout.columns||80});const[size,setSize]=(0,import_react37.useState)(read);(0,import_react37.useEffect)(()=>{const onResize=()=>setSize(read());process.stdout.on("resize",onResize);return()=>{process.stdout.off("resize",onResize)}},[]);return size}var import_jsx_runtime9=__toESM(require_jsx_runtime(),1);function
|
|
1285
|
+
yellow",children:"\u26A0 TLS \u508D\u53D7\u30D7\u30ED\u30AD\u30B7\u914D\u4E0B\u3067\u306F NODE_EXTRA_CA_CERTS \u306B\u30D7\u30ED\u30AD\u30B7\u306E CA \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08Node \u8D77\u52D5\u6642\u306B\u3057\u304B\u8AAD\u307E\u308C\u306A\u3044\u305F\u3081\u3001\u8A2D\u5B9A\u5F8C\u306B twp \u3092\u518D\u8D77\u52D5\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059\uFF09"}):null]}),(0,import_jsx_runtime8.jsx)(Text,{dimColor:true,children:"Esc \u3067\u623B\u308B"})]})}var import_react37=__toESM(require_react(),1);function useTerminalSize(){const read=()=>({rows:process.stdout.rows||24,columns:process.stdout.columns||80});const[size,setSize]=(0,import_react37.useState)(read);(0,import_react37.useEffect)(()=>{const onResize=()=>setSize(read());process.stdout.on("resize",onResize);return()=>{process.stdout.off("resize",onResize)}},[]);return size}var import_react38=__toESM(require_react(),1);var import_jsx_runtime9=__toESM(require_jsx_runtime(),1);function useStaticLog(initial){const[items,setItems]=(0,import_react38.useState)(initial);const[epoch,setEpoch]=(0,import_react38.useState)(0);const append=(0,import_react38.useCallback)(item=>{setItems(prev=>[...prev,item])},[]);const clear=(0,import_react38.useCallback)(()=>{setItems([]);setEpoch(e=>e+1)},[]);return{items,epoch,append,clear}}function StaticLogView({log,children}){return(0,import_jsx_runtime9.jsx)(
|
|
1286
|
+
Static,{items:log.items,children},log.epoch)}var import_jsx_runtime10=__toESM(require_jsx_runtime(),1);function paletteFor(text,mode){return text.startsWith("/")&&!/\s/.test(text)?filterCommands(text,mode):[]}function fileCompletionFor(b,index){const mention=mentionAtCursor(b.text,b.cursor);if(mention===null||index===null)return null;const items=filterFiles(mention.query,index.files);return items.length===0?null:{items,start:mention.start,end:mention.end}}function originLabel(cmd){if(cmd.origin==="project")return" \xB7 \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u5B9A\u7FA9";
|
|
1286
1287
|
if(cmd.origin==="user")return" \xB7 \u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9";return""}function insert(b,value){return{text:b.text.slice(0,b.cursor)+value+b.text.slice(b.cursor),cursor:b.cursor+value.length}}var seq=0;var nextId=()=>`i${++seq}`;function fullInputFor(request){const command=request.input["command"];if(typeof command==="string"&&command!=="")return command;return request.preview}function promptFor(request){const target=request.target??{tool:request.tool,input:request.input};const persist=request.
|
|
1287
1288
|
persistOptions??[];return{name:target.tool.name,input:fullInputFor(request),...request.diff?{diff:request.diff}:{},noAlwaysReason:request.noAlwaysReason,...persist.length>0?{persistOptions:persist,persistTarget:`${projectPermissionsPath()}\uFF08${projectRootFor(process.cwd())}\uFF09`}:{},...isTwpTool(target.tool.name)?{card:toolCardFor(target.tool.name,target.input)}:{}}}function catalogTitleSuffix(source){if(source==="server")return"";return source==="cache"?" \u2014 \u30AD\u30E3\u30C3\u30B7\u30E5":
|
|
1288
|
-
" \u2014 \u7D44\u307F\u8FBC\u307F\u4E00\u89A7\uFF08\u672A\u53D6\u5F97\uFF09"}function App2({initialMode,initialModel,initialCatalog,initialModelWarning,runtime,version,startInDoctor,permissionMode,permissionLayers,audit}){const{exit}=use_app_default();const size=useTerminalSize();const stream=useTokenStream();const
|
|
1289
|
-
|
|
1290
|
-
|
|
1291
|
-
|
|
1292
|
-
0);const[selectedState,setSelectedState]=(0,
|
|
1293
|
-
context.setContextWindow(specFor(catalog,model).contextWindow);setContext(runtime.context.snapshot())},[catalog,model,runtime]);const busyRef=(0,
|
|
1294
|
-
const[permState,setPermStateRaw]=(0,
|
|
1295
|
-
null);(0,
|
|
1296
|
-
1:0)+1+1;const liveTotal=Math.max(MIN_LIVE_ROWS,size.rows-1);const inputContentWidth=Math.max(1,size.columns-6);const inputMaxRows=Math.max(1,Math.min(6,liveTotal-fixedChrome-1));const inputWindow=layoutInputWindow(buffer.text,buffer.cursor,inputContentWidth,inputMaxRows);const budget=liveAreaBudget(size.rows,fixedChrome+inputWindow.shownRows);const commit=(0,
|
|
1297
|
-
const blockOnMinSupported=(0,
|
|
1289
|
+
" \u2014 \u7D44\u307F\u8FBC\u307F\u4E00\u89A7\uFF08\u672A\u53D6\u5F97\uFF09"}function App2({initialMode,initialModel,initialCatalog,initialModelWarning,runtime,version,startInDoctor,permissionMode,permissionLayers,audit}){const{exit}=use_app_default();const size=useTerminalSize();const stream=useTokenStream();const log=useStaticLog(()=>[{id:nextId(),kind:"banner",banner:buildBanner({version,model:initialModel,width:process.stdout.columns||80,branch:currentBranch()})}]);const bufferRef=(0,import_react39.useRef)(
|
|
1290
|
+
{text:"",cursor:0});const[buffer,setBufferState]=(0,import_react39.useState)(bufferRef.current);const[mode,setMode]=(0,import_react39.useState)(initialMode);const[model,setModel]=(0,import_react39.useState)(initialModel);const[catalog,setCatalog]=(0,import_react39.useState)(initialCatalog);const[busy,setBusy]=(0,import_react39.useState)(false);const[context,setContext]=(0,import_react39.useState)(()=>runtime.context.snapshot());const[runningTool,setRunningTool]=(0,import_react39.useState)(null);
|
|
1291
|
+
const[overlay,setOverlay]=(0,import_react39.useState)(startInDoctor?"doctor":"none");const[pendingPermission,setPendingPermissionState]=(0,import_react39.useState)(null);const pendingPermissionRef=(0,import_react39.useRef)(null);const setPendingPermission=(0,import_react39.useCallback)(next=>{pendingPermissionRef.current=next;setPendingPermissionState(next)},[]);const[keyLog,setKeyLog]=(0,import_react39.useState)([]);const[ctrlCArmed,setCtrlCArmed]=(0,import_react39.useState)(false);const[pasting,
|
|
1292
|
+
setPasting]=(0,import_react39.useState)(false);const[fileIndex,setFileIndex]=(0,import_react39.useState)(null);const fileIndexRef=(0,import_react39.useRef)(null);fileIndexRef.current=fileIndex;const fileIndexLoading=(0,import_react39.useRef)(false);const setBuffer=(0,import_react39.useCallback)(fn=>{bufferRef.current=fn(bufferRef.current);setBufferState(bufferRef.current)},[]);const clearBuffer=(0,import_react39.useCallback)(()=>setBuffer(()=>({text:"",cursor:0})),[setBuffer]);const selectedRef=(0,import_react39.useRef)(
|
|
1293
|
+
0);const[selectedState,setSelectedState]=(0,import_react39.useState)(0);const setSelected=(0,import_react39.useCallback)(next=>{selectedRef.current=typeof next==="function"?next(selectedRef.current):next;setSelectedState(selectedRef.current)},[]);const modeRef=(0,import_react39.useRef)(mode);modeRef.current=mode;const modelRef=(0,import_react39.useRef)(model);modelRef.current=model;const catalogRef=(0,import_react39.useRef)(catalog);catalogRef.current=catalog;(0,import_react39.useEffect)(()=>{runtime.
|
|
1294
|
+
context.setContextWindow(specFor(catalog,model).contextWindow);setContext(runtime.context.snapshot())},[catalog,model,runtime]);const busyRef=(0,import_react39.useRef)(false);const[pendingSwitch,setPendingSwitch]=(0,import_react39.useState)(null);const abortRef=(0,import_react39.useRef)(false);const streamAbortRef=(0,import_react39.useRef)(null);const sleepRef=(0,import_react39.useRef)(null);const permissionResolver=(0,import_react39.useRef)(null);const permStateRef=(0,import_react39.useRef)(INITIAL_DIALOG_STATE);
|
|
1295
|
+
const[permState,setPermStateRaw]=(0,import_react39.useState)(INITIAL_DIALOG_STATE);const setPermState=(0,import_react39.useCallback)(next=>{permStateRef.current=next;setPermStateRaw(next)},[]);const sessionAllow=(0,import_react39.useRef)(new Set);const toolkitRef=(0,import_react39.useRef)(null);toolkitRef.current??=createTwpToolkit(runtime,version);const toolkit=toolkitRef.current;const sessionRules=(0,import_react39.useRef)([]);const demoSessionAllow=(0,import_react39.useRef)(new Set);const lastToolRef=(0,import_react39.useRef)(
|
|
1296
|
+
null);(0,import_react39.useEffect)(()=>()=>{abortRef.current=true;streamAbortRef.current?.abort();toolkitRef.current?.cancelCatalogRefresh();const s=sleepRef.current;if(s){clearTimeout(s.timer);sleepRef.current=null;s.resolve()}},[]);const modeDef=getMode(mode);const branch=(0,import_react39.useMemo)(()=>currentBranch(),[]);const cwd2=(0,import_react39.useMemo)(()=>displayCwd(),[]);const networkDiagnostics=(0,import_react39.useMemo)(()=>proxyDiagnostics(),[]);const fixedChrome=1+2+(busy?1:0)+(pasting?
|
|
1297
|
+
1:0)+1+1;const liveTotal=Math.max(MIN_LIVE_ROWS,size.rows-1);const inputContentWidth=Math.max(1,size.columns-6);const inputMaxRows=Math.max(1,Math.min(6,liveTotal-fixedChrome-1));const inputWindow=layoutInputWindow(buffer.text,buffer.cursor,inputContentWidth,inputMaxRows);const budget=liveAreaBudget(size.rows,fixedChrome+inputWindow.shownRows);const{append:appendItem,clear:clearItems}=log;const commit=(0,import_react39.useCallback)(item=>{appendItem({...item,id:nextId()})},[appendItem]);const catalogFetchRef=(0,import_react39.useRef)(
|
|
1298
|
+
null);const blockOnMinSupported=(0,import_react39.useCallback)(floor=>{const text=minSupportedBlockMessage(version,floor??"");commit({kind:"notice",tone:"error",text});process.exitCode=1;exit();process.stderr.write(stripTerminalControls(text))},[commit,exit,version]);(0,import_react39.useEffect)(()=>{if(!runtime.loggedIn){commit({kind:"notice",tone:"warn",text:"\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u3044\u307E\u305B\u3093\u3002\u4F1A\u8A71\u3092\u59CB\u3081\u308B\u306B\u306F\u5225\u306E\u7AEF\u672B\u3067 `twp login` \u3092\u5B9F\u884C\u3057\u3066\u304F\u3060\u3055\u3044\u3002"});
|
|
1298
1299
|
return}if(initialModelWarning!==null){commit({kind:"notice",tone:"warn",text:initialModelWarning})}void toolkit.refreshCatalog();let cancelled=false;const pending=runtime.loadCatalog();catalogFetchRef.current=pending;void pending.then(fetched=>{if(cancelled)return;if(isBelowMinSupported(version,fetched.minSupportedVersion)){blockOnMinSupported(fetched.minSupportedVersion);return}catalogRef.current=fetched;setCatalog(fetched);const picked=pickModel(fetched,modelRef.current);if(picked.model!==modelRef.
|
|
1299
1300
|
current){modelRef.current=picked.model;setModel(picked.model);if(picked.warning!==void 0)commit({kind:"notice",tone:"warn",text:picked.warning})}});return()=>{cancelled=true}},[blockOnMinSupported,commit,initialModelWarning,runtime,version]);const sleep=ms=>new Promise(resolve=>{const timer=setTimeout(()=>{sleepRef.current=null;resolve()},ms);sleepRef.current={timer,resolve}});const abortSleep=()=>{const s=sleepRef.current;if(!s)return;clearTimeout(s.timer);sleepRef.current=null;s.resolve()};const askPermission=spec=>new Promise(
|
|
1300
1301
|
resolve=>{setPendingPermission(spec);setSelected(0);setPermState(INITIAL_DIALOG_STATE);setOverlay("permission");permissionResolver.current=choice=>{setOverlay("none");setPendingPermission(null);permissionResolver.current=null;resolve(choice)}});const persistAllow=isAbsolute(twpHomeDir())?rule=>{const result=persistProjectAllow(rule,{cwd:process.cwd()});if(result.ok){commit({kind:"notice",tone:"info",text:`\u300C${stripTerminalControls(rule)}\u300D\u3092 ${stripTerminalControls(result.file)} \u306B\u4FDD\u5B58\u3057\
|
|
1301
|
-
\u307E\u3057\u305F\uFF08${stripTerminalControls(result.root)} \u3067\u306F\u4ECA\u5F8C\u805E\u304D\u307E\u305B\u3093\uFF09`})}else{commit({kind:"notice",tone:"warn",text:`\u4ECA\u5F8C\u805E\u304B\u306A\u3044\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF08\u4ECA\u56DE\u3060\u3051\u8A31\u53EF\u3057\u307E\u3057\u305F\uFF09: ${stripTerminalControls(result.reason)}`})}return result.ok}:void 0;const runTurn2=(0,
|
|
1302
|
+
\u307E\u3057\u305F\uFF08${stripTerminalControls(result.root)} \u3067\u306F\u4ECA\u5F8C\u805E\u304D\u307E\u305B\u3093\uFF09`})}else{commit({kind:"notice",tone:"warn",text:`\u4ECA\u5F8C\u805E\u304B\u306A\u3044\u306E\u4FDD\u5B58\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF08\u4ECA\u56DE\u3060\u3051\u8A31\u53EF\u3057\u307E\u3057\u305F\uFF09: ${stripTerminalControls(result.reason)}`})}return result.ok}:void 0;const runTurn2=(0,import_react39.useCallback)(async(text,opts={})=>{if(busyRef.current){commit(
|
|
1302
1303
|
{kind:"notice",tone:"warn",text:"\u5B9F\u884C\u4E2D\u3067\u3059\u3002Ctrl+C \u3067\u4E2D\u65AD\u3057\u3066\u304B\u3089\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"});return}busyRef.current=true;abortRef.current=false;setBusy(true);commit({kind:"user",text:opts.display??text});const startupCatalog=await catalogFetchRef.current;if(startupCatalog&&isBelowMinSupported(version,startupCatalog.minSupportedVersion)){blockOnMinSupported(startupCatalog.minSupportedVersion);return}const controller=new AbortController;
|
|
1303
1304
|
streamAbortRef.current=controller;try{const expandMode=getMode(modeRef.current);const expandDeps={aborted:()=>abortRef.current,isFile:p=>{const cwdNow=process.cwd();if(isAbsolute(p)||p.startsWith("~")||/^[\\/]{2}/.test(p))return false;const abs=resolvePath(cwdNow,p);const rel=relativePath(cwdNow,abs);if(rel===""||rel===".."||rel.startsWith(`..${sep}`)||isAbsolute(rel))return false;try{return statSync(abs).isFile()}catch{return false}},readFile:async p=>{try{const size2=statSync(resolvePath(process.
|
|
1304
1305
|
cwd(),p)).size;if(size2>MAX_ATTACHED_BYTES)return{ok:false,reason:`${size2} \u30D0\u30A4\u30C8\u3042\u308A\u3001\u6DFB\u4ED8\u306E\u4E0A\u9650 ${MAX_ATTACHED_BYTES} \u30D0\u30A4\u30C8\u3092\u8D85\u3048\u307E\u3059`}}catch{}const result2=await executeTool(readFileTool,{path:p},{mode:expandMode,ctx:{cwd:process.cwd()},sessionAllow:sessionAllow.current,sessionRules:sessionRules.current,...persistAllow?{persistAllow}:{},permissionLayers,...permissionMode!==void 0?{permissionMode}:{},audit,askPermission:request=>askPermission(
|
|
@@ -1312,14 +1313,14 @@ diff}:{}};lastToolRef.current=run;commit({kind:"tool",run});stream.begin()}});co
|
|
|
1312
1313
|
droppedMessages>0){commit({kind:"notice",tone:"warn",text:`\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u4E0A\u9650\u306B\u8FD1\u3065\u3044\u305F\u305F\u3081\u3001\u53E4\u3044\u3084\u308A\u53D6\u308A ${result.droppedMessages} \u4EF6\u3092\u5C65\u6B74\u304B\u3089\u843D\u3068\u3057\u307E\u3057\u305F\uFF08/clear \u3067\u660E\u793A\u7684\u306B\u6D88\u305B\u307E\u3059\uFF09`})}if(result.upstreamError!==null){commit({kind:"notice",tone:"error",text:`\u30E2\u30C7\u30EB\u306E\u5FDC\u7B54\u304C\u9014\u4E2D\u3067\u7D42\u308F\u308A\u307E\u3057\u305F: ${result.
|
|
1313
1314
|
upstreamError}`})}if(result.aborted){commit({kind:"notice",tone:"warn",text:"\u4E2D\u65AD\u3057\u307E\u3057\u305F\uFF08Ctrl+C\uFF09\u2014 \u3053\u3053\u307E\u3067\u306E\u6D88\u8CBB\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u30AF\u30EC\u30B8\u30C3\u30C8\u306B\u8A08\u4E0A\u3055\u308C\u307E\u3059"})}else if(result.emptyResponse){commit({kind:"notice",tone:"warn",text:"\u30E2\u30C7\u30EB\u304B\u3089\u30C6\u30AD\u30B9\u30C8\u5FDC\u7B54\u304C\u3042\u308A\u307E\u305B\u3093\u3067\u3057\u305F"})}}catch(err){const partial=stream.
|
|
1314
1315
|
end();stream.clear();if(partial.trim()!=="")commit({kind:"assistant",text:partial});commit({kind:"notice",tone:"error",text:err instanceof RelayError?err.message:`\u30E2\u30C7\u30EB\u53D6\u6B21\u3067\u30A8\u30E9\u30FC\u304C\u767A\u751F\u3057\u307E\u3057\u305F: ${err.message}`})}finally{streamAbortRef.current=null;setRunningTool(null);setContext(runtime.context.snapshot());busyRef.current=false;setBusy(false)}},[audit,blockOnMinSupported,branch,commit,cwd2,permissionLayers,permissionMode,runtime,
|
|
1315
|
-
stream,version]);const runDemo=(0,
|
|
1316
|
+
stream,version]);const runDemo=(0,import_react39.useCallback)(async text=>{if(busyRef.current){commit({kind:"notice",tone:"warn",text:"\u5B9F\u884C\u4E2D\u3067\u3059\u3002Ctrl+C \u3067\u4E2D\u65AD\u3057\u3066\u304B\u3089\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"});return}busyRef.current=true;abortRef.current=false;setBusy(true);commit({kind:"user",text});for(const step of buildScenario(text)){if(abortRef.current)break;if(step.type==="text"){await stream.start(step.text);stream.clear();if(!abortRef.
|
|
1316
1317
|
current)commit({kind:"assistant",text:step.text});continue}const spec=step.spec;const policy=applyPermissionMode(checkPermission(spec.name,getMode(modeRef.current)),spec.risk??"exec",permissionMode).decision;const decision=policy!=="deny"&&demoSessionAllow.current.has(spec.name)?"allow":policy;if(decision==="deny"){const run={name:spec.name,summary:spec.summary,input:spec.input,output:`permission denied: ${getMode(modeRef.current).label}\u30E2\u30FC\u30C9\u3067\u306F ${spec.name} \u306F deny \u3067\u3059`,
|
|
1317
1318
|
status:"denied"};commit({kind:"tool",run});commit({kind:"notice",tone:"warn",text:"deny-and-continue: \u62D2\u5426\u3092 tool result \u3068\u3057\u3066\u30E2\u30C7\u30EB\u3078\u8FD4\u3057\u3001\u30EB\u30FC\u30D7\u306F\u7D9A\u884C\u3057\u307E\u3059\uFF08\u7121\u8A00\u306E allow \u306B\u306F\u3057\u306A\u3044\uFF09"});continue}if(decision==="ask"){const choice=await askPermission(spec);if(choice==="no"||typeof choice==="object"&&choice.kind==="instead"){commit({kind:"tool",run:{name:spec.name,summary:spec.
|
|
1318
1319
|
summary,input:spec.input,output:"\u30E6\u30FC\u30B6\u30FC\u304C\u62D2\u5426\u3057\u307E\u3057\u305F",status:"denied"}});commit({kind:"notice",tone:"info",text:"/demo \u306F\u518D\u751F\u306E\u305F\u3081\u3001\u3053\u3053\u3067\u6253\u3061\u5207\u308A\u307E\u3059\uFF08\u5B9F\u969B\u306E\u4F1A\u8A71\u3067\u306F\u300C\u4EE3\u308F\u308A\u306B\u3053\u3046\u3057\u3066\u300D\u306E\u5165\u529B\u304C\u30E2\u30C7\u30EB\u3078\u8FD4\u308A\u307E\u3059\uFF09"});break}if(choice==="always")demoSessionAllow.current.
|
|
1319
|
-
add(spec.name)}setRunningTool({name:spec.name,summary:spec.summary,input:spec.input,output:"",status:"running"});await sleep(spec.durationMs);setRunningTool(null);if(abortRef.current)break;const done={name:spec.name,summary:spec.summary,input:spec.input,output:spec.output,status:"done",durationMs:spec.durationMs};lastToolRef.current=done;commit({kind:"tool",run:done})}stream.clear();busyRef.current=false;setBusy(false)},[commit,stream]);const runTwp=(0,
|
|
1320
|
+
add(spec.name)}setRunningTool({name:spec.name,summary:spec.summary,input:spec.input,output:"",status:"running"});await sleep(spec.durationMs);setRunningTool(null);if(abortRef.current)break;const done={name:spec.name,summary:spec.summary,input:spec.input,output:spec.output,status:"done",durationMs:spec.durationMs};lastToolRef.current=done;commit({kind:"tool",run:done})}stream.clear();busyRef.current=false;setBusy(false)},[commit,stream]);const runTwp=(0,import_react39.useCallback)(async(line,name,args)=>{
|
|
1320
1321
|
const result=await runTwpSlashCommand(name,args,{profile:runtime.profileName,version});const out=stripTerminalControls(result.out).replace(/\n+$/,"");const err=stripTerminalControls(result.err).replace(/\n+$/,"");if(result.code===0){commit({kind:"notice",tone:"info",text:[line,out===""?"\uFF080 \u4EF6\uFF09":out,...err!==""?[err]:[]].join("\n")});return}commit({kind:"notice",tone:"error",text:[line,err===""?`\u7D42\u4E86\u30B3\u30FC\u30C9 ${result.code}`:err].join("\n")})},[commit,runtime,version]);
|
|
1321
|
-
const runPromptCommand=(0,
|
|
1322
|
-
cmd,modeRef.current)){commit({kind:"notice",tone:"warn",text:`${name} \u306F ${getMode(modeRef.current).label}\u30E2\u30FC\u30C9\u3067\u306F\u4F7F\u3048\u307E\u305B\u3093\uFF08\u4F7F\u3048\u308B\u30E2\u30FC\u30C9: ${(cmd.modes??[]).join(" / ")}\uFF09`});return}if(isTwpSlashCommand(name)){void runTwp(line.trim(),name,args);return}if(cmd?.template!==void 0){runPromptCommand(line.trim(),cmd,parsed.rest,args);return}switch(name){case"/exit":exit();return;case"/clear":
|
|
1322
|
+
const runPromptCommand=(0,import_react39.useCallback)((line,cmd,rest,args)=>{const body=expandArguments(cmd.template??"",rest,args);void runTurn2(frameCommandPrompt(cmd,body),{display:line,...cmd.allowedTools!==void 0?{allowedTools:cmd.allowedTools}:{}})},[runTurn2]);const runCommand=(0,import_react39.useCallback)(line=>{const parsed=parseCommandLine(line);if(!parsed)return;const{args}=parsed;const name=resolveCommandName(parsed.name);const cmd=findCommand(name);if(cmd!==void 0&&!isAvailableInMode(
|
|
1323
|
+
cmd,modeRef.current)){commit({kind:"notice",tone:"warn",text:`${name} \u306F ${getMode(modeRef.current).label}\u30E2\u30FC\u30C9\u3067\u306F\u4F7F\u3048\u307E\u305B\u3093\uFF08\u4F7F\u3048\u308B\u30E2\u30FC\u30C9: ${(cmd.modes??[]).join(" / ")}\uFF09`});return}if(isTwpSlashCommand(name)){void runTwp(line.trim(),name,args);return}if(cmd?.template!==void 0){runPromptCommand(line.trim(),cmd,parsed.rest,args);return}switch(name){case"/exit":exit();return;case"/clear":clearItems();runtime.context.clear();
|
|
1323
1324
|
setContext(runtime.context.snapshot());return;case"/doctor":setOverlay("doctor");return;case"/model":setSelected(Math.max(0,catalog.ids.indexOf(model)));setOverlay("model");return;case"/mode":{const target=args[0];if(target!==void 0&&!isModeId(target)){commit({kind:"notice",tone:"warn",text:`\u4E0D\u660E\u306A\u30E2\u30FC\u30C9: ${target}\uFF08dev | biz | plan\uFF09`});return}const to=target??nextMode(modeRef.current);setMode(to);commit({kind:"notice",tone:"info",text:`\u30E2\u30FC\u30C9\u3092 ${getMode(
|
|
1324
1325
|
to).label}\uFF08${to}\uFF09\u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F \u2014 ${getMode(to).description}`});return}case"/help":commit({kind:"notice",tone:"info",text:["\u4F1A\u8A71\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u30AF\u30EC\u30B8\u30C3\u30C8\u3067\u5B9F\u969B\u306B\u30E2\u30C7\u30EB\u3078\u9001\u3089\u308C\u307E\u3059",`\u4F7F\u3048\u308B\u30B3\u30DE\u30F3\u30C9: ${commandsForMode(modeRef.current).map(c=>c.name).join(" ")}\uFF08/exit \u306F /quit \u3082\u53EF\uFF09`,...commandsForMode(
|
|
1325
1326
|
modeRef.current).filter(c=>c.source!==void 0).map(c=>` ${c.name} \u2014 ${c.origin==="project"?"\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u5B9A\u7FA9":"\u30E6\u30FC\u30B6\u30FC\u5B9A\u7FA9"}: ${c.source??""}`),"\u30B3\u30DE\u30F3\u30C9\u306F .twp/commands/*.md\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\uFF09\u3068 ~/.twp/commands/*.md\uFF08\u30E6\u30FC\u30B6\u30FC\uFF09\u306B\u7F6E\u3051\u307E\u3059 \xB7 @\u30D1\u30B9 \u3067\u30D5\u30A1\u30A4\u30EB\u6DFB\u4ED8 \xB7 #ABC-123 \u306E\u3088\u3046\u306A\u30BF\u30B9\u30AF\u30AD\u30FC\u3067\u30BF\u30B9\u30AF\u6DFB\u4ED8",
|
|
@@ -1328,16 +1329,16 @@ join("\n")});return;case"/context":{const snapshot=runtime.context.snapshot();co
|
|
|
1328
1329
|
current).tools.join(" ")}`,`\u30E2\u30FC\u30C9\u5B9A\u7FA9: ${modeSource(modeRef.current)??"\u7D44\u307F\u8FBC\u307F\uFF08\u5B9A\u7FA9\u30D5\u30A1\u30A4\u30EB\u306A\u3057\uFF09"}`,`\u63A5\u7D9A\u5148: ${runtime.relayUrl}\uFF08\u30D7\u30ED\u30D5\u30A1\u30A4\u30EB: ${runtime.profileName}\uFF09`,`\u30BF\u30FC\u30F3\u6570: ${snapshot.turns} \xB7 \u76F4\u8FD1\u306E\u30D7\u30ED\u30F3\u30D7\u30C8\u9577: ${snapshot.lastPromptTokens} tok`,`\u30B3\u30F3\u30C6\u30AD\u30B9\u30C8\u6B8B\u91CF: ${snapshot.remainingPercent}\
|
|
1329
1330
|
%\uFF08\u7A93 200,000 tok \u306E\u6982\u7B97\uFF09`,`\u5B9F\u6E2C\u30C8\u30FC\u30AF\u30F3\u5408\u8A08: input ${t.inputTokens} / cache_read ${t.cacheReadTokens} / cache_write ${t.cacheWriteTokens} / output ${t.outputTokens}`,...snapshot.droppedMessages>0?[`\u4E0A\u9650\u306E\u305F\u3081\u843D\u3068\u3057\u305F\u3084\u308A\u53D6\u308A: ${snapshot.droppedMessages} \u4EF6`]:[],`permission-mode: ${describePermissionMode(permissionMode)}`,`\u76E3\u67FB\u30ED\u30B0: ${describeAuditLog(audit)}`,`\u5E38\u99D0\u30C4\u30FC\u30EB: ${resident.
|
|
1330
1331
|
tools.length} \u672C / \u30B9\u30AD\u30FC\u30DE\u6982\u7B97 ${resident.tokens} tok\uFF08\u4E0A\u9650 ${RESIDENT_TOKEN_CAP} tok\uFF09`,` ${resident.tools.map(t2=>t2.name).join(" ")||"\uFF08\u306A\u3057\uFF09"}`,...resident.dropped.length>0?[` \u4E0A\u9650\u8D85\u904E\u3067\u5916\u3057\u305F\u30C4\u30FC\u30EB: ${resident.dropped.join(" ")}`]:[],...(()=>{const status=toolkit.catalogStatus();return status!==null?[describeToolCatalog(status)]:[]})()].join("\n")});return}case"/demo":void runDemo("\uFF08\u30C7\
|
|
1331
|
-
\u30E2\u518D\u751F\uFF09\u30C4\u30FC\u30EB\u30AB\u30FC\u30C9\u3068\u6A29\u9650\u30C0\u30A4\u30A2\u30ED\u30B0");return;default:commit({kind:"notice",tone:"warn",text:`\u4E0D\u660E\u306A\u30B3\u30DE\u30F3\u30C9: ${name}`})}},[audit,catalog,commit,exit,model,permissionMode,runDemo,runPromptCommand,runTwp,runtime]);const submit=(0,
|
|
1332
|
-
return}const text=bufferRef.current.text.trim();clearBuffer();setOverlay("none");if(text==="")return;if(text.startsWith("/")){runCommand(text);return}void runTurn2(text)},[clearBuffer,commit,runCommand,runTurn2]);const paletteItems=(0,
|
|
1333
|
-
current?c:null},[buffer,fileIndex]);(0,
|
|
1334
|
-
err.message)}`})})},[buffer,commit]);const onKey=(0,
|
|
1332
|
+
\u30E2\u518D\u751F\uFF09\u30C4\u30FC\u30EB\u30AB\u30FC\u30C9\u3068\u6A29\u9650\u30C0\u30A4\u30A2\u30ED\u30B0");return;default:commit({kind:"notice",tone:"warn",text:`\u4E0D\u660E\u306A\u30B3\u30DE\u30F3\u30C9: ${name}`})}},[audit,catalog,commit,exit,model,permissionMode,runDemo,runPromptCommand,runTwp,runtime]);const submit=(0,import_react39.useCallback)(()=>{if(busyRef.current){commit({kind:"notice",tone:"warn",text:"\u5B9F\u884C\u4E2D\u3067\u3059\u3002Ctrl+C \u3067\u4E2D\u65AD\u3057\u3066\u304B\u3089\u9001\u4FE1\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u5165\u529B\u306F\u4FDD\u6301\u3057\u3066\u3044\u307E\u3059\uFF09"});
|
|
1333
|
+
return}const text=bufferRef.current.text.trim();clearBuffer();setOverlay("none");if(text==="")return;if(text.startsWith("/")){runCommand(text);return}void runTurn2(text)},[clearBuffer,commit,runCommand,runTurn2]);const paletteItems=(0,import_react39.useMemo)(()=>paletteFor(buffer.text,mode),[buffer.text,mode]);const dismissedMentionRef=(0,import_react39.useRef)(null);const fileCompletion=(0,import_react39.useMemo)(()=>{const c=fileCompletionFor(buffer,fileIndex);return c!==null&&c.start!==dismissedMentionRef.
|
|
1334
|
+
current?c:null},[buffer,fileIndex]);(0,import_react39.useEffect)(()=>{if(fileIndexRef.current!==null||fileIndexLoading.current)return;if(mentionAtCursor(buffer.text,buffer.cursor)===null)return;fileIndexLoading.current=true;void buildFileIndex(process.cwd()).then(index=>{setFileIndex(index);if(index.note!==null)commit({kind:"notice",tone:"info",text:`@ \u88DC\u5B8C: ${index.note}`})},err=>{fileIndexLoading.current=false;commit({kind:"notice",tone:"warn",text:`@ \u88DC\u5B8C\u306E\u5019\u88DC\u3092\u4F5C\u308C\u307E\u305B\u3093\u3067\u3057\u305F: ${stripTerminalControls(
|
|
1335
|
+
err.message)}`})})},[buffer,commit]);const onKey=(0,import_react39.useCallback)(ev=>{setKeyLog(prev=>[...prev.slice(-49),ev]);if(ev.name==="ctrl-d"){exit();return}if(ev.name==="ctrl-c"){if(busyRef.current){if(abortRef.current){permissionResolver.current?.("no");return}abortRef.current=true;streamAbortRef.current?.abort();permissionResolver.current?.("no");stream.cancel();abortSleep();setRunningTool(null);if(!streamAbortRef.current){commit({kind:"notice",tone:"warn",text:"\u4E2D\u65AD\u3057\u307E\u3057\u305F\uFF08Ctrl+C\uFF09"})}
|
|
1335
1336
|
return}if(bufferRef.current.text!==""){clearBuffer();return}if(ctrlCArmed){exit();return}setCtrlCArmed(true);commit({kind:"notice",tone:"info",text:"\u3082\u3046\u4E00\u5EA6 Ctrl+C \u3067\u7D42\u4E86\u3057\u307E\u3059\uFF08Ctrl+D \u3067\u3082\u7D42\u4E86\uFF09"});return}setCtrlCArmed(false);if(ev.name==="shift-tab"||ev.name==="alt-m"){const to=nextMode(modeRef.current);setMode(to);return}if(ev.name==="ctrl-r"){const last=lastToolRef.current;if(last)commit({kind:"tool",run:{...last,summary:`${last.
|
|
1336
1337
|
summary}\uFF08\u5C55\u958B\uFF09`},expanded:true});return}if(overlay==="permission"){const resolve=permissionResolver.current;if(!resolve)return;if(ev.name==="paste"&&ev.value&&permStateRef.current.stage!=="instead"){const pasted=ev.value.replace(/\r\n?/g,"\n");setBuffer(b=>insert(b,pasted));return}const step=stepDialog(permStateRef.current,ev,pendingPermissionRef.current??{name:""});if("answer"in step)resolve(step.answer);else setPermState(step.state);return}if(overlay==="doctor"){if(ev.name===
|
|
1337
1338
|
"escape")setOverlay("none");return}if(overlay==="model"){if(ev.name==="up")setSelected(s=>Math.max(0,s-1));else if(ev.name==="down")setSelected(s=>Math.min(catalog.ids.length-1,s+1));else if(ev.name==="escape")setOverlay("none");else if(ev.name==="enter"){const pickedId=catalog.ids[selectedRef.current];if(pickedId!==void 0&&classifyModelSwitch(catalog,model,pickedId)==="new_conversation"&&!runtime.context.isEmpty()){if(busyRef.current){commit({kind:"notice",tone:"warn",text:`${modelLabel(pickedId)}\
|
|
1338
1339
|
\u306F\u63A5\u7D9A\u5148\u307E\u305F\u306F\u4F1A\u8A71\u306E\u5F62\u5F0F\u304C\u7570\u306A\u308B\u305F\u3081\u65B0\u3057\u3044\u4F1A\u8A71\u304C\u5FC5\u8981\u3067\u3059\u3002\u5FDC\u7B54\u304C\u7D42\u308F\u3063\u3066\u304B\u3089\u5207\u308A\u66FF\u3048\u3066\u304F\u3060\u3055\u3044`});setOverlay("none");return}setPendingSwitch(pickedId);setSelected(0);setOverlay("model-confirm");return}if(pickedId!==void 0){setModel(pickedId);commit({kind:"notice",tone:"info",text:`\u30E2\u30C7\u30EB\u3092 ${modelLabel(
|
|
1339
1340
|
pickedId)} \u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F\uFF08\u30E2\u30FC\u30C9\u306F ${getMode(modeRef.current).label} \u306E\u307E\u307E\uFF09`})}setOverlay("none")}return}if(overlay==="model-confirm"){if(ev.name==="up")setSelected(0);else if(ev.name==="down")setSelected(1);else if(ev.name==="escape"||ev.name==="enter"&&selectedRef.current!==0){setPendingSwitch(null);setOverlay("none");commit({kind:"notice",tone:"info",text:`\u30E2\u30C7\u30EB\u306F ${modelLabel(model)} \u306E\u307E\u307E\u3067\u3059`})}else if(ev.
|
|
1340
|
-
name==="enter"&&pendingSwitch!==null){
|
|
1341
|
+
name==="enter"&&pendingSwitch!==null){clearItems();runtime.context.clear();setContext(runtime.context.snapshot());setModel(pendingSwitch);commit({kind:"notice",tone:"info",text:`\u65B0\u3057\u3044\u4F1A\u8A71\u3092\u59CB\u3081\u3001\u30E2\u30C7\u30EB\u3092 ${modelLabel(pendingSwitch)} \u306B\u5207\u308A\u66FF\u3048\u307E\u3057\u305F\uFF08\u63A5\u7D9A\u5148\u307E\u305F\u306F\u4F1A\u8A71\u306E\u5F62\u5F0F\u304C\u7570\u306A\u308B\u305F\u3081\u524D\u306E\u4F1A\u8A71\u306F\u5F15\u304D\u7D99\u3044\u3067\u3044\u307E\u305B\u3093\uFF09`});
|
|
1341
1342
|
setPendingSwitch(null);setOverlay("none")}return}const mention=mentionAtCursor(bufferRef.current.text,bufferRef.current.cursor);if(mention===null||mention.start!==dismissedMentionRef.current)dismissedMentionRef.current=null;const files=busyRef.current?null:fileCompletionFor(bufferRef.current,fileIndexRef.current);if(files!==null&&files.start!==dismissedMentionRef.current){if(ev.name==="up"){setSelected(s=>Math.max(0,s-1));return}if(ev.name==="down"){setSelected(s=>Math.min(files.items.length-1,s+
|
|
1342
1343
|
1));return}if(ev.name==="tab"){const picked=files.items[Math.min(selectedRef.current,files.items.length-1)];if(picked!==void 0){const insertText=`@${picked} `;setBuffer(b=>({text:b.text.slice(0,files.start)+insertText+b.text.slice(files.end),cursor:files.start+insertText.length}));setSelected(0)}return}if(ev.name==="escape"){dismissedMentionRef.current=files.start;setBuffer(b=>({...b}));return}}const palette=busyRef.current?[]:paletteFor(bufferRef.current.text,modeRef.current);if(palette.length>
|
|
1343
1344
|
0){if(ev.name==="up"){setSelected(s=>Math.max(0,s-1));return}if(ev.name==="down"){setSelected(s=>Math.min(palette.length-1,s+1));return}if(ev.name==="tab"){const picked=palette[selectedRef.current];if(picked){setBuffer(()=>({text:picked.name,cursor:picked.name.length}));setSelected(0)}return}if(ev.name==="enter"){const typed=bufferRef.current.text.trim();const exact=palette.find(c=>c.name===typed||c.aliases?.includes(typed));const picked=exact??palette[Math.min(selectedRef.current,palette.length-
|
|
@@ -1345,13 +1346,13 @@ setPendingSwitch(null);setOverlay("none")}return}const mention=mentionAtCursor(b
|
|
|
1345
1346
|
b=>insert(b,"\n"));return;case"enter":{const b=bufferRef.current;if(b.cursor>0&&b.text[b.cursor-1]==="\\"){setBuffer(prev=>({text:`${prev.text.slice(0,prev.cursor-1)}
|
|
1346
1347
|
${prev.text.slice(prev.cursor)}`,cursor:prev.cursor}));return}submit();return}case"backspace":setBuffer(b=>{const prev=prevBoundary(b.text,b.cursor);return prev===b.cursor?b:{text:b.text.slice(0,prev)+b.text.slice(b.cursor),cursor:prev}});setSelected(0);return;case"delete":setBuffer(b=>({text:b.text.slice(0,b.cursor)+b.text.slice(nextBoundary(b.text,b.cursor)),cursor:b.cursor}));return;case"left":setBuffer(b=>({...b,cursor:prevBoundary(b.text,b.cursor)}));return;case"right":setBuffer(b=>({...b,cursor:nextBoundary(
|
|
1347
1348
|
b.text,b.cursor)}));return;case"home":setBuffer(b=>({...b,cursor:0}));return;case"end":setBuffer(b=>({...b,cursor:b.text.length}));return;case"ctrl-u":clearBuffer();return;default:return}},[busy,catalog,clearBuffer,commit,ctrlCArmed,exit,model,overlay,pendingSwitch,runtime,setBuffer,setSelected,stream,submit,runCommand]);useTerminalInput(onKey,setPasting);const streamRows=fitTailRows(stream.text,size.columns,budget.body).rows;const diffBudget=budget.body-13;const listBudget=Math.max(1,budget.body-
|
|
1348
|
-
6);const doctorBudget=Math.max(1,budget.body-11-doctorNetworkRows(networkDiagnostics));return(0,
|
|
1349
|
-
Text,{wrap:"truncate",children:line===""?" ":line},i))}):null,runningTool?(0,
|
|
1350
|
-
catalog.source)}`,items:toModelInfos(catalog.ids).map(m=>({key:m.id,label:m.label,hint:m.note})),selected:selectedState,maxRows:Math.min(catalog.ids.length,listBudget),footer:"\u2191\u2193 \u3067\u9078\u629E \xB7 Enter \u3067\u6C7A\u5B9A \xB7 Esc \u3067\u53D6\u6D88"}):null,overlay==="model-confirm"&&pendingSwitch!==null?(0,
|
|
1351
|
-
items:[{key:"new",label:"\u65B0\u3057\u3044\u4F1A\u8A71\u3092\u59CB\u3081\u3066\u5207\u308A\u66FF\u3048\u308B",hint:"\u3053\u308C\u307E\u3067\u306E\u4F1A\u8A71\u306F\u5F15\u304D\u7D99\u304C\u308C\u307E\u305B\u3093"},{key:"cancel",label:"\u53D6\u308A\u6D88\u3059",hint:`${modelLabel(model)} \u306E\u307E\u307E\u7D9A\u3051\u308B`}],selected:selectedState,maxRows:2,footer:"\u2191\u2193 \u3067\u9078\u629E \xB7 Enter \u3067\u6C7A\u5B9A \xB7 Esc \u3067\u53D6\u6D88"}):null,overlay==="doctor"?(0,
|
|
1352
|
-
Doctor,{events:keyLog,maxRows:doctorBudget,network:networkDiagnostics}):null,overlay==="none"&&!busy&&fileCompletion!==null?(0,
|
|
1353
|
-
|
|
1354
|
-
busy,pasting,width:size.columns}),(0,
|
|
1349
|
+
6);const doctorBudget=Math.max(1,budget.body-11-doctorNetworkRows(networkDiagnostics));return(0,import_jsx_runtime10.jsxs)(Box_default,{flexDirection:"column",children:[(0,import_jsx_runtime10.jsx)(StaticLogView,{log,children:item=>(0,import_jsx_runtime10.jsx)(ItemView,{item},item.id)}),(0,import_jsx_runtime10.jsxs)(Box_default,{flexDirection:"column",marginTop:1,children:[stream.streaming||stream.text!==""?(0,import_jsx_runtime10.jsx)(Box_default,{flexDirection:"column",children:streamRows.map(
|
|
1350
|
+
(line,i)=>(0,import_jsx_runtime10.jsx)(Text,{wrap:"truncate",children:line===""?" ":line},i))}):null,runningTool?(0,import_jsx_runtime10.jsx)(ToolCard,{run:runningTool,expanded:false,maxLines:budget.body}):null,overlay==="permission"&&pendingPermission?(0,import_jsx_runtime10.jsx)(PermissionDialog,{spec:pendingPermission,state:permState,maxDiffLines:diffBudget}):null,overlay==="model"?(0,import_jsx_runtime10.jsx)(SelectList,{title:`\u30E2\u30C7\u30EB\u3092\u9078\u629E\uFF08\u30E2\u30FC\u30C9\u3068\u306F\u72EC\u7ACB\uFF09${catalogTitleSuffix(
|
|
1351
|
+
catalog.source)}`,items:toModelInfos(catalog.ids).map(m=>({key:m.id,label:m.label,hint:m.note})),selected:selectedState,maxRows:Math.min(catalog.ids.length,listBudget),footer:"\u2191\u2193 \u3067\u9078\u629E \xB7 Enter \u3067\u6C7A\u5B9A \xB7 Esc \u3067\u53D6\u6D88"}):null,overlay==="model-confirm"&&pendingSwitch!==null?(0,import_jsx_runtime10.jsx)(SelectList,{title:`${modelLabel(pendingSwitch)} \u306F\u63A5\u7D9A\u5148\u304C\u7570\u306A\u308A\u307E\u3059\u3002\u73FE\u5728\u306E\u4F1A\u8A71\u3092\u7D42\u3048\u3066\u65B0\u3057\u3044\u4F1A\u8A71\u3092\u59CB\u3081\u307E\u3059\u304B\uFF1F`,
|
|
1352
|
+
items:[{key:"new",label:"\u65B0\u3057\u3044\u4F1A\u8A71\u3092\u59CB\u3081\u3066\u5207\u308A\u66FF\u3048\u308B",hint:"\u3053\u308C\u307E\u3067\u306E\u4F1A\u8A71\u306F\u5F15\u304D\u7D99\u304C\u308C\u307E\u305B\u3093"},{key:"cancel",label:"\u53D6\u308A\u6D88\u3059",hint:`${modelLabel(model)} \u306E\u307E\u307E\u7D9A\u3051\u308B`}],selected:selectedState,maxRows:2,footer:"\u2191\u2193 \u3067\u9078\u629E \xB7 Enter \u3067\u6C7A\u5B9A \xB7 Esc \u3067\u53D6\u6D88"}):null,overlay==="doctor"?(0,import_jsx_runtime10.jsx)(
|
|
1353
|
+
Doctor,{events:keyLog,maxRows:doctorBudget,network:networkDiagnostics}):null,overlay==="none"&&!busy&&fileCompletion!==null?(0,import_jsx_runtime10.jsx)(SelectList,{title:"\u30D5\u30A1\u30A4\u30EB",items:fileCompletion.items.map(f=>({key:f,label:stripTerminalControls(f),hint:""})),selected:selectedState,maxRows:Math.min(8,listBudget),footer:"\u2191\u2193 \u9078\u629E \xB7 Tab \u78BA\u5B9A \xB7 Esc \u9589\u3058\u308B\uFF08Enter \u306F\u305D\u306E\u307E\u307E\u9001\u4FE1\uFF09"}):null,overlay==="n\
|
|
1354
|
+
one"&&!busy&&paletteItems.length>0?(0,import_jsx_runtime10.jsx)(SelectList,{title:"\u30B9\u30E9\u30C3\u30B7\u30E5\u30B3\u30DE\u30F3\u30C9",items:paletteItems.map(c=>({key:c.name,label:`${c.name}${c.argumentHint?` ${c.argumentHint}`:""}`,hint:`${c.description}${originLabel(c)}`})),selected:selectedState,maxRows:Math.min(8,listBudget),footer:"\u2191\u2193 \u9078\u629E \xB7 Tab \u88DC\u5B8C \xB7 Enter \u5B9F\u884C \xB7 Esc \u53D6\u6D88"}):null,(0,import_jsx_runtime10.jsx)(InputBox,{value:buffer.text,
|
|
1355
|
+
window:inputWindow,busy,pasting,width:size.columns}),(0,import_jsx_runtime10.jsx)(StatusLine,{mode:modeDef,model,cwd:cwd2,branch,contextRemaining:context.remainingPercent,width:size.columns}),(0,import_jsx_runtime10.jsx)(HintLine,{width:size.columns})]})]})}import fs4 from"fs";import path2 from"path";var KNOWN_KEYS=new Set(["description","argument-hint","allowed-tools","mode"]);var TEXT_MAX=80;var TEMPLATE_MAX_BYTES=16384;var FILE_COUNT_MAX=128;var FILE_BYTES_MAX=64*1024;var DEPTH_MAX=3;var WARNING_MAX=30;var KNOWN_TOOLS=new Set([...localTools().map(t=>t.name),"bash","shell"]);var SEGMENT=/^[A-Za-z0-9][A-Za-z0-9_-]*$/;function samePath(a,b){const real=p=>{try{return fs4.realpathSync(p)}catch{return path2.resolve(p)}};const x=real(a);const y=real(b);return process.platform==="win32"||process.
|
|
1355
1356
|
platform==="darwin"?x.toLowerCase()===y.toLowerCase():x===y}function userCommandsDirs(env3=process.env){const home=path2.join(twpHomeDir(env3),"commands");const dirs=configReadDirs(env3).map(dir=>path2.join(dir,"commands"));return[home,...dirs.filter(d=>d!==home)]}function listCommandFiles(root,origin){const found=[];const warnings=[];let truncated=false;const walk=(dir,segments)=>{let names;try{names=fs4.readdirSync(dir)}catch(err){const code=err.code;if(code!=="ENOENT")warnings.push(`${dir}: \u8AAD\
|
|
1356
1357
|
\u307F\u53D6\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF08${code??"unknown"}\uFF09`);return}for(const entry of names.sort()){if(truncated)return;if(entry.startsWith("."))continue;const full=path2.join(dir,entry);const stat=lstatOrNull(full);if(stat===null)continue;if(stat.isSymbolicLink()){warnings.push(`${full}: \u30B7\u30F3\u30DC\u30EA\u30C3\u30AF\u30EA\u30F3\u30AF\u306F\u8AAD\u307F\u307E\u305B\u3093\uFF08\u5B9F\u30D5\u30A1\u30A4\u30EB\u3092\u7F6E\u3044\u3066\u304F\u3060\u3055\u3044\uFF09`);
|
|
1357
1358
|
continue}if(stat.isDirectory()){if(!SEGMENT.test(entry)){warnings.push(`${full}: \u30C7\u30A3\u30EC\u30AF\u30C8\u30EA\u540D\u306B\u4F7F\u3048\u306A\u3044\u6587\u5B57\u304C\u3042\u308A\u307E\u3059\uFF08\u82F1\u6570\u5B57\u30FB-\u30FB_ \u306E\u307F\uFF09`);continue}if(segments.length+1>=DEPTH_MAX){warnings.push(`${full}: \u968E\u5C64\u304C\u6DF1\u3059\u304E\u307E\u3059\uFF08${DEPTH_MAX} \u6BB5\u307E\u3067\u8AAD\u307F\u307E\u3059\uFF09`);continue}walk(full,[...segments,entry]);continue}if(!entry.toLowerCase().
|
|
@@ -1373,9 +1374,9 @@ continue}const already=byName.get(candidate.name);if(already!==void 0){warnings.
|
|
|
1373
1374
|
continue}let text;try{text=fs4.readFileSync(candidate.file,"utf8")}catch(err){warnings.push(`${candidate.file}: \u8AAD\u307F\u53D6\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF08${err.message}\uFF09`);continue}const cmd=buildCommandFromFile(text,candidate,warnings);if(cmd!==null)byName.set(candidate.name,cmd)}const commands=[...byName.values()].sort((a,b)=>a.name.localeCompare(b.name));return{commands,warnings}}function activateCommandFiles(write,opts={}){const loaded=loadCommandFiles(opts);setActiveCommandFiles(
|
|
1374
1375
|
loaded.commands);for(const warning of loaded.warnings.slice(0,WARNING_MAX))write(stripTerminalControls(`\u26A0 \u30B3\u30DE\u30F3\u30C9\u5B9A\u7FA9: ${warning}
|
|
1375
1376
|
`));if(loaded.warnings.length>WARNING_MAX){write(`\u26A0 \u30B3\u30DE\u30F3\u30C9\u5B9A\u7FA9: \u307B\u304B ${loaded.warnings.length-WARNING_MAX} \u4EF6\u306E\u8B66\u544A\u3092\u7701\u7565\u3057\u307E\u3057\u305F
|
|
1376
|
-
`)}return loaded}var
|
|
1377
|
+
`)}return loaded}var import_jsx_runtime11=__toESM(require_jsx_runtime(),1);async function startTui(opts){activateModeFiles(text=>void process.stderr.write(stripTerminalControls(text)));activateCommandFiles(text=>void process.stderr.write(stripTerminalControls(text)));const permissionLayers=activatePermissionSettings(text=>void process.stderr.write(stripTerminalControls(text)),{...opts.allowedTools?{allowedTools:opts.allowedTools}:{},...opts.disallowedTools?{disallowedTools:opts.disallowedTools}:{}});const mode=opts.
|
|
1377
1378
|
mode??"dev";const runtime=createRuntime({...opts.profile!==void 0?{profile:opts.profile}:{},...opts.model!==void 0?{model:opts.model}:{},cliVersion:opts.version});const initialCatalog=loadCachedCatalog(runtime.profileName,runtime.relayUrl)??builtinCatalog();const picked=pickModel(initialCatalog,runtime.configuredModel??void 0);if(opts.noTui){printPlain(mode,picked.model,runtime.relayUrl,opts.version,opts.permissionMode,(opts.allowedTools?.length??0)+(opts.disallowedTools?.length??0)>0);return}if(!opts.
|
|
1378
|
-
doctor){const blocked=await checkMinSupportedVersion({current:opts.version,cachedFloor:runtime.loadCachedFloor().minSupportedVersion,refresh:async()=>(await runtime.loadCatalog()).minSupportedVersion,write:text=>void process.stderr.write(stripTerminalControls(text))});if(blocked){process.exitCode=1;return}}const audit=createAuditLogger({mode,permissionMode:opts.permissionMode,model:picked.model,cwd:process.cwd(),cliVersion:opts.version,interactive:true});const instance=render_default((0,
|
|
1379
|
+
doctor){const blocked=await checkMinSupportedVersion({current:opts.version,cachedFloor:runtime.loadCachedFloor().minSupportedVersion,refresh:async()=>(await runtime.loadCatalog()).minSupportedVersion,write:text=>void process.stderr.write(stripTerminalControls(text))});if(blocked){process.exitCode=1;return}}const audit=createAuditLogger({mode,permissionMode:opts.permissionMode,model:picked.model,cwd:process.cwd(),cliVersion:opts.version,interactive:true});const instance=render_default((0,import_jsx_runtime11.jsx)(
|
|
1379
1380
|
App2,{initialMode:mode,initialModel:picked.model,initialCatalog,initialModelWarning:picked.warning??null,runtime,version:opts.version,startInDoctor:opts.doctor,audit,permissionLayers,...opts.permissionMode!==void 0?{permissionMode:opts.permissionMode}:{}}),{exitOnCtrlC:false});await instance.waitUntilExit()}function printPlain(mode,model,relayUrl,version,permissionMode,hasRuleFlags=false){const out={write:text=>void process.stdout.write(stripTerminalControls(text))};out.write(`twp ${version} \u2014 \u3053\
|
|
1380
1381
|
\u306E\u74B0\u5883\u3067\u306F\u5BFE\u8A71 TUI \u3092\u8D77\u52D5\u3067\u304D\u307E\u305B\u3093\uFF08--no-tui / \u975ETTY\uFF09
|
|
1381
1382
|
`);out.write(`mode=${mode} model=${model} relay=${relayUrl}
|
package/dist/cli.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
3
3
|
const require = __twpCreateRequire(import.meta.url);
|
|
4
|
-
import{GLOBAL_OPTIONS_HELP}from"./chunk-PECIBNFD.js";import{parseArgv}from"./chunk-FKTYYARF.js";import"./chunk-2LOT54OO.js";import"./chunk-NJL3H2BB.js";import"./chunk-6FI4ZMZ7.js";import"./chunk-TJQZYYG3.js";import{formatUnknownArgs}from"./chunk-OKATZ4SN.js";import"./chunk-VSJBJXZO.js";var VERSION=true?"0.96.
|
|
4
|
+
import{GLOBAL_OPTIONS_HELP}from"./chunk-PECIBNFD.js";import{parseArgv}from"./chunk-FKTYYARF.js";import"./chunk-2LOT54OO.js";import"./chunk-NJL3H2BB.js";import"./chunk-6FI4ZMZ7.js";import"./chunk-TJQZYYG3.js";import{formatUnknownArgs}from"./chunk-OKATZ4SN.js";import"./chunk-VSJBJXZO.js";var VERSION=true?"0.96.2":"0.0.0-dev";var HELP=`twp ${VERSION} \u2014 TWP CLI
|
|
5
5
|
|
|
6
6
|
\u4F7F\u3044\u65B9:
|
|
7
7
|
twp \u5BFE\u8A71 TUI \u3092\u8D77\u52D5
|
|
@@ -1561,4 +1561,4 @@ const options={profile:args.profile,method:args.loginMethod,tenant:args.tenant,n
|
|
|
1561
1561
|
{action:args.taskLoopAction??"run",project:args.project,profile:args.profile,safe:args.safe,daemon:args.daemon,interval:args.interval,maxCycles:args.maxCycles,forceRunner:args.forceRunner,force:args.stopForce,drain:args.stopDrain,engine:args.engine,version:VERSION,verbose:args.verbose,scheduleNow:args.scheduleNow,scheduleCounts:args.scheduleCounts,scheduleGate:args.scheduleGate,scheduleOp:args.scheduleOp,scheduleConfigOp:args.scheduleConfigOp,scheduleId:args.scheduleId,charterOp:args.charterOp,charterInput:args.
|
|
1562
1562
|
charterFile,charterOutput:args.charterOut,charterRevision:args.charterRevision,settingsOp:args.settingsOp,orientationOp:args.orientationOp,orientationArgs:args.orientationArgs,skillOp:args.skillOp,skillName:args.skillName,skillAll:args.skillAll,skillDir:args.skillDir,skillConfig:args.skillConfig,output:args.output,query:args.query,revisionFrom:args.revisionFrom,revisionTo:args.revisionTo,planOp:args.planOp,capacityOp:args.capacityOp,includeStopped:args.includeStopped,runnerOp:args.runnerOp,runnerId:args.
|
|
1563
1563
|
runnerTargetId,planEmpty:args.planEmpty,planCheck:args.planCheck,yes:args.yes,ais:args.ais,workspace:args.workspace,aiConfigFile:args.aiConfigFile,noAiConfigFile:args.noAiConfigFile});return}if(args.command==="print"){const{runOneShot}=await import("./oneshot-JAA46MUA.js");process.exitCode=await runOneShot({prompt:args.prompt??"",fromStdin:args.promptFromStdin,mode:args.mode??"dev",...args.permissionMode!==void 0?{permissionMode:args.permissionMode}:{},allowedTools:args.allowedTools,disallowedTools:args.
|
|
1564
|
-
disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-
|
|
1564
|
+
disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-JXSWS4S5.js");await startTui({mode:args.mode,permissionMode:args.permissionMode,allowedTools:args.allowedTools,disallowedTools:args.disallowedTools,model:args.model,profile:args.profile,noTui:args.noTui||!process.stdout.isTTY,doctor:args.doctor,version:VERSION})}await main();
|
package/package.json
CHANGED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"domain": "prospect-activity",
|
|
3
|
-
"operations": [
|
|
4
|
-
{"name":"create","domain":"prospect-activity","operationId":"prospectActivity.store","method":"POST","path":"/v2/prospects/{prospectId}/activities","summary":"アプローチ履歴の登録","pathParams":[{"name":"prospectId","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["call","form","email","mail","visit","other"]},"result":{"type":"string","enum":["no_answer","rejected","interested","appointment","other"]},"activity_date":{"type":["string","null"],"format":"date-time"},"next_action_date":{"type":["string","null"],"format":"date"},"content":{"type":["string","null"],"maxLength":10000},"campaign_id":{"type":["string","null"],"maxLength":255},"status":{"type":["string","null"],"enum":["new","approaching","responded","appointment","rejected","on_hold",null]}},"required":["method","result"]}},"resultPath":null,"risk":"write","aliases":[]},
|
|
5
|
-
{"name":"delete","domain":"prospect-activity","operationId":"prospectActivity.destroy","method":"DELETE","path":"/v2/prospects/{prospectId}/activities/{activityId}","summary":"アプローチ履歴の削除(論理削除)","pathParams":[{"name":"prospectId","type":"string","required":true,"source":"spec"},{"name":"activityId","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":null,"resultPath":null,"risk":"destructive","aliases":[]},
|
|
6
|
-
{"name":"list","domain":"prospect-activity","operationId":"prospectActivity.index","method":"GET","path":"/v2/prospects/{prospectId}/activities","summary":"アプローチ履歴一覧(activity_date 降順)","pathParams":[{"name":"prospectId","type":"string","required":true,"source":"spec"}],"queryParams":[{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"},{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"}],"body":null,"resultPath":"items","risk":"read","aliases":[]},
|
|
7
|
-
{"name":"options","domain":"prospect-activity","operationId":"prospectActivity.options","method":"GET","path":"/v2/prospects/activity-options","summary":"選択肢(手段・結果)の一覧。MCP 経由の利用者が値を推測しなくて済むように公開する。","pathParams":[],"queryParams":[{"name":"limit","type":"integer","required":false,"description":"1ページあたりの件数","source":"curation"},{"name":"cursor","type":"string","required":false,"description":"次ページの取得に使うカーソル","source":"curation"}],"body":null,"resultPath":"results","risk":"read","aliases":[]},
|
|
8
|
-
{"name":"update","domain":"prospect-activity","operationId":"prospectActivity.update","method":"PUT","path":"/v2/prospects/{prospectId}/activities/{activityId}","summary":"アプローチ履歴の更新","pathParams":[{"name":"prospectId","type":"string","required":true,"source":"spec"},{"name":"activityId","type":"string","required":true,"source":"spec"}],"queryParams":[],"body":{"schema":{"type":"object","properties":{"method":{"type":"string","enum":["call","form","email","mail","visit","other"]},"result":{"type":"string","enum":["no_answer","rejected","interested","appointment","other"]},"activity_date":{"type":["string","null"],"format":"date-time"},"next_action_date":{"type":["string","null"],"format":"date"},"content":{"type":["string","null"],"maxLength":10000},"campaign_id":{"type":["string","null"],"maxLength":255},"status":{"type":["string","null"],"enum":["new","approaching","responded","appointment","rejected","on_hold",null]}},"required":["method","result"]}},"resultPath":null,"risk":"write","aliases":[]}
|
|
9
|
-
]
|
|
10
|
-
}
|