@tocca-systems/twp-cli 0.48.0 → 0.50.0
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 +16 -0
- package/README.md +121 -4
- package/dist/{agent-loop-XKH5YE6A.js → agent-loop-EBIXJ4EH.js} +2 -2
- package/dist/{ai-dispatch-FGVNSM6L.js → ai-dispatch-2FL2AFL7.js} +2 -2
- package/dist/analysis-2SWIQ4AI.js +4 -0
- package/dist/announcement-R76XDLW7.js +52 -0
- package/dist/{api-command-26MLBIZC.js → api-command-VFFV7BD4.js} +5 -16
- package/dist/{app-Y7MAQAPC.js → app-PNDIA4NV.js} +4 -4
- package/dist/{attendance-correct-5SFXA4DC.js → attendance-correct-SN2KYGOE.js} +2 -2
- package/dist/{attendance-lists-3T7S7QF5.js → attendance-lists-6S62D2UV.js} +1 -1
- package/dist/{backlog-F4EWY7MT.js → backlog-5XSCJGPJ.js} +2 -2
- package/dist/{budget-QFUGQIPZ.js → budget-PIGBJ5N7.js} +1 -1
- package/dist/{charter-command-2RIS2VTQ.js → charter-command-LIX2JXRJ.js} +1 -1
- package/dist/{chunk-6TPGATAG.js → chunk-342WUEV4.js} +1 -1
- package/dist/{chunk-IXFMXUNT.js → chunk-3YCVR7X4.js} +1 -1
- package/dist/{chunk-VTQAI52S.js → chunk-3ZRMMBP5.js} +1 -1
- package/dist/{chunk-HNUBM24L.js → chunk-4S7SNE2M.js} +1 -1
- package/dist/{chunk-QICH2OOI.js → chunk-5JL26BPU.js} +1 -1
- package/dist/{chunk-ORUDW52G.js → chunk-6LSQCOCJ.js} +1 -1
- package/dist/{chunk-F7K37QG6.js → chunk-7UB4I3JF.js} +1 -1
- package/dist/{chunk-AJO4O5ZF.js → chunk-A4LFG7MW.js} +1 -1
- package/dist/{chunk-LAXINIDA.js → chunk-BVXUORXE.js} +1 -1
- package/dist/{chunk-GOZCJLRA.js → chunk-CF3ZZKCZ.js} +2 -2
- package/dist/{chunk-MY2U3CD6.js → chunk-CUPPIHSJ.js} +51 -27
- package/dist/{chunk-JKL6NUVV.js → chunk-DQCHLRSB.js} +2 -2
- package/dist/{chunk-BN26WHLS.js → chunk-ELEOYXLD.js} +2 -2
- package/dist/{chunk-4B3T4UE7.js → chunk-EXT4AIDF.js} +1 -1
- package/dist/{chunk-VB2CSFRO.js → chunk-FANDYQCM.js} +1 -1
- package/dist/{chunk-4OSCQLZT.js → chunk-FMJUPLDG.js} +1 -1
- package/dist/{chunk-ATYA6DG5.js → chunk-GFLGXGWE.js} +1 -1
- package/dist/chunk-GXZOFRZH.js +9 -0
- package/dist/{chunk-KS2ZUQFC.js → chunk-IRHKFHJZ.js} +2 -2
- package/dist/{chunk-QOUDJ7XO.js → chunk-IU5P6MY5.js} +1 -1
- package/dist/{chunk-IOGMOXYF.js → chunk-MI6HVYR2.js} +1 -1
- package/dist/{chunk-A65V3K75.js → chunk-NK53AFVE.js} +1 -1
- package/dist/{chunk-XQRSX2RH.js → chunk-NN6LAZRA.js} +33 -8
- package/dist/{chunk-3AD2T6L2.js → chunk-ONAMXPTE.js} +1 -1
- package/dist/{chunk-XDHLO54T.js → chunk-OTIR4GES.js} +1 -1
- package/dist/{chunk-LXIAOCUW.js → chunk-PS5QFKHB.js} +1 -1
- package/dist/chunk-Q2KIETMB.js +132 -0
- package/dist/{chunk-3HH5IYNO.js → chunk-QBGEYQ2I.js} +1 -1
- package/dist/{chunk-OHXZO5WK.js → chunk-QLENN5DD.js} +1 -1
- package/dist/chunk-QSXS5SB2.js +33 -0
- package/dist/{chunk-VYT6JAXQ.js → chunk-S3A24B2C.js} +6 -6
- package/dist/{chunk-OYDF57NH.js → chunk-SECVO7RQ.js} +2 -2
- package/dist/{chunk-TKGVAWGU.js → chunk-TVODNAPX.js} +1 -1
- package/dist/{chunk-IO5SMECE.js → chunk-V2BB5EWS.js} +2 -2
- package/dist/{chunk-2YNZ4MRT.js → chunk-V64CGX7V.js} +1 -1
- package/dist/{chunk-UFND7FBC.js → chunk-VFPY2A23.js} +2 -2
- package/dist/chunk-WVCEKC7V.js +14 -0
- package/dist/{chunk-H3WYVFTS.js → chunk-YJZT3UD3.js} +1 -1
- package/dist/chunk-ZGHEF45T.js +4 -0
- package/dist/{chunk-FZWRYJVM.js → chunk-ZY6LEKWR.js} +2 -2
- package/dist/cli.js +105 -10
- package/dist/{commands-EIWS357Q.js → commands-CA22R7VD.js} +7 -7
- package/dist/{commands-SWR442MR.js → commands-ZZGY6P3B.js} +2 -2
- package/dist/{company-77JEESSV.js → company-CQYSBKTQ.js} +4 -3
- package/dist/{completion-YSP6UE25.js → completion-3F2GJNGC.js} +1 -1
- package/dist/{contract-26SKL7XT.js → contract-A2FGGVOR.js} +2 -2
- package/dist/{department-IZAR2LZ4.js → department-6BILJZG7.js} +2 -2
- package/dist/{deposit-MYTKRIEX.js → deposit-OAGRJMZ4.js} +2 -2
- package/dist/{estimate-KLS7XJLD.js → estimate-5PSXHHNT.js} +4 -4
- package/dist/{inquiry-52OT4HKJ.js → inquiry-NMOT4JSX.js} +2 -2
- package/dist/{invoice-D77PS3WU.js → invoice-TXEJT6I6.js} +3 -3
- package/dist/{job-title-U67Z25ZO.js → job-title-NSYPQMEX.js} +1 -1
- package/dist/{knowledge-Q3QLSNDX.js → knowledge-5DX6EMHZ.js} +2 -32
- package/dist/{leave-OSIABEFV.js → leave-DEGAZKVH.js} +2 -2
- package/dist/{media-HDG4VHAR.js → media-RJCTHFK6.js} +86 -26
- package/dist/{notification-MEOHWBXH.js → notification-NG4J6N2D.js} +2 -2
- package/dist/{onedrive-3OBI4B5Z.js → onedrive-YPJCILR2.js} +1 -1
- package/dist/{oneshot-ACV6XH5A.js → oneshot-RA65DTXP.js} +2 -2
- package/dist/{outlook-LY6WBXIJ.js → outlook-MNOVX6QS.js} +2 -2
- package/dist/{position-N7SRF3CF.js → position-OZBQYKZS.js} +1 -1
- package/dist/{project-YMJJDSTP.js → project-5YFBRM32.js} +2 -2
- package/dist/{prospect-3JD7STGT.js → prospect-TQ2FFWEZ.js} +3 -3
- package/dist/{purchase-2SLZBDD6.js → purchase-WOUWIZHO.js} +4 -4
- package/dist/query-XEOVFI4D.js +3 -0
- package/dist/receivable-RFZT6PY3.js +4 -0
- package/dist/{registry-GQ3L7PZ2.js → registry-H4NP4HUQ.js} +1 -1
- package/dist/{report-TUSP7RRF.js → report-EFE43ZVI.js} +2 -2
- package/dist/{run-ZPB23AZX.js → run-TNFPATQF.js} +2 -2
- package/dist/{sales-ai-review-7NPG7KV6.js → sales-ai-review-FSA4J2J2.js} +2 -2
- package/dist/{sales-master-W5MXNZQ2.js → sales-master-Q5BJ7RNG.js} +3 -3
- package/dist/{sales-numbering-RQV2I5G5.js → sales-numbering-ITDBMODV.js} +2 -2
- package/dist/{server-skills-Z5DGCJQ7.js → server-skills-IXIOOOC2.js} +1 -1
- package/dist/{skill-command-74MCUHFJ.js → skill-command-NXHTJXYY.js} +1 -1
- package/dist/{storage-KLLBENBY.js → storage-AQDCEBDJ.js} +1 -1
- package/dist/{supplier-payment-TDL3IE4H.js → supplier-payment-FWGQR3Z3.js} +3 -3
- package/dist/support-TVTQJFRE.js +53 -0
- package/dist/{task-2SHYSZBZ.js → task-IDQKPRYS.js} +3 -3
- package/dist/{teams-DRHXPLWN.js → teams-IO6UQNYP.js} +2 -2
- package/dist/{user-YEIHSVVN.js → user-B6KW6HA2.js} +3 -3
- package/dist/worker-agent-PEFBLL56.js +150 -0
- package/dist/{workflow-USG3ZKW6.js → workflow-SYWZKWWB.js} +1 -1
- package/package.json +1 -1
- package/dist/analysis-GAU2A3FU.js +0 -3
- package/dist/chunk-4F2ONF4P.js +0 -127
- package/dist/chunk-6ZB7A6VD.js +0 -9
- package/dist/chunk-Y5EN7RYN.js +0 -4
- package/dist/query-3ZQP4DCN.js +0 -3
- package/dist/receivable-6ZRAUHC3.js +0 -4
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{salesAdminForbidden}from"./chunk-
|
|
4
|
-
nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-
|
|
3
|
+
import{salesAdminForbidden}from"./chunk-ELEOYXLD.js";import{featureLicenseGuidance,licenseForbidden}from"./chunk-CF3ZZKCZ.js";import{booleanText,boundedText}from"./chunk-OTIR4GES.js";import{SALES_ESTIMATE_FORMATS_PATH,SALES_ESTIMATE_NO_RULES_PATH,SALES_INVOICE_NO_RULES_PATH,SALES_PURCHASE_NO_RULES_PATH,SALES_ROUNDING_SETTING_PATH,isExactNumericId}from"./chunk-Q2KIETMB.js";import{repeatedValues}from"./chunk-7UB4I3JF.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,
|
|
4
|
+
nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-MI6HVYR2.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";var INT_MAX=2147483647;var MEMBER_FORBIDDEN=licenseForbidden(featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406"));function envelope(body,what){if(!isRecord(body)||body["result"]!==true)throw new ApiResponseError(`${what}\u306E\u5FDC\u7B54\u306E\u5F62\u304C\u60F3\u5B9A\u3068\u9055\u3044\u307E\u3059\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return body}function recordOf(body,what){const data=envelope(body,what)["data"];if(!isRecord(data)||typeof data["id"]!==
|
|
5
5
|
"string")throw new ApiResponseError(`${what}\u306E\u5FDC\u7B54\u306B data.id \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`);return data}function serverMessage(body){const message=isRecord(body)?body["message"]:void 0;return typeof message==="string"&&message!==""?[message]:[]}function text(value){return typeof value==="string"||typeof value==="number"?String(value):""}function integerValue(flag,raw,min,max=INT_MAX){const trimmed=raw.
|
|
6
6
|
trim();const value=/^\d+$/.test(trimmed)?Number(trimmed):Number.NaN;if(!Number.isSafeInteger(value)||value<min||value>max)throw new UsageError(`${flag} \u306F ${min} \u4EE5\u4E0A ${max} \u4EE5\u4E0B\u306E\u6574\u6570\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${raw}`);return value}var RULE_COLUMNS=["id","rule_name","prefix","digit_count","current_number","count_up_num","next_number","sort_order"];function nextNumber(rule,purchaseFormat){const current=rule["current_number"];const step=rule["\
|
|
7
7
|
count_up_num"]??1;const digits=rule["digit_count"];if(typeof current!=="number"||typeof step!=="number"||typeof digits!=="number")return void 0;const width=purchaseFormat&&digits===0?4:digits;const padded=String(current+step).padStart(width,"0");const prefix=rule["prefix"];if(purchaseFormat)return`${prefix===null||prefix===void 0?"2000":text(prefix)}${padded}`;return typeof prefix==="string"&&prefix!==""&&prefix!=="0"?`${prefix}${padded}`:padded}function withNext(spec,row){const next=nextNumber(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{isValidSkillName,skillDigest}from"./chunk-
|
|
3
|
+
import{isValidSkillName,skillDigest}from"./chunk-YJZT3UD3.js";import{describeError}from"./chunk-JTJWDV5U.js";import{isPrivateProjectId}from"./chunk-GY7KI5E5.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import fs from"fs";import path from"path";var SKILL_REF=/^([ \t]*)\/([a-z][a-z0-9-]*)(?=[ \t\n]|$)([ \t]+[^\n]*)?/gm;function stripFrontmatter(content){if(!content.startsWith("---"))return content;const m=/^---[ \t]*\r?\n[\s\S]*?\r?\n---[ \t]*(?:\r?\n)?/.exec(content);return m===null?content:content.slice(m[0].length)}function referencedSkills(prompt){const out=[];for(const m of prompt.matchAll(SKILL_REF)){const name=m[2]??"";if(!out.includes(name))out.push(name)}return out}function expandServerSkills(prompt,bodies){if(bodies.size===0)return prompt;
|
|
4
4
|
return prompt.replace(SKILL_REF,(whole,_indent,name,args)=>{const body=bodies.get(name);if(body===void 0)return whole;return stripFrontmatter(body).replaceAll("$ARGUMENTS",()=>(args??"").trim())})}function prepareSkillOverlay(root,workspace,bodies,provider){const commands=path.join(root,".claude","commands");fs.rmSync(root,{recursive:true,force:true});fs.mkdirSync(commands,{recursive:true});const src=path.join(workspace,".claude","commands");let names=[];try{names=fs.readdirSync(src).filter(f=>f.
|
|
5
5
|
endsWith(".md"))}catch{}for(const f of names){const from=path.join(src,f);try{if(fs.statSync(from).isFile())fs.copyFileSync(from,path.join(commands,f))}catch{}}for(const[name,body]of bodies){if(!isValidSkillName(name))continue;fs.writeFileSync(path.join(commands,`${name}.md`),body,"utf8")}if(/^[a-z0-9-]+$/.test(provider)){const rel=path.join("scripts","agent-adapters","providers",`${provider}.md`);const from=path.join(workspace,rel);if(fs.existsSync(from)){fs.mkdirSync(path.dirname(path.join(root,
|
|
6
6
|
rel)),{recursive:true});fs.copyFileSync(from,path.join(root,rel))}}}function unwrap(json,key){if(json===null||typeof json!=="object"||Array.isArray(json))return null;const top=json;const data=top["data"];if(data!==null&&typeof data==="object"&&!Array.isArray(data)&&key in data){return data}return top}function isRevision(v){return typeof v==="number"&&Number.isInteger(v)&&v>=0}function parseSkillList(res){const b=unwrap(res.json,"skills");const raw=b?.["skills"];if(!Array.isArray(raw))return null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-
|
|
4
|
-
import{acknowledgement,isRecord,pick}from"./chunk-
|
|
3
|
+
import{FORCE_FLAG,OUT_FLAG,REV_FLAG,revOf,singleId,uploadStaged}from"./chunk-DQCHLRSB.js";import{CUSTOMER_LICENSE,childForbidden,levelForbidden}from"./chunk-IRHKFHJZ.js";import{inspectLocalFile}from"./chunk-4S7SNE2M.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-NK53AFVE.js";import{SALES_ESTIMATES_PATH,isExactNumericId}from"./chunk-Q2KIETMB.js";import{nonEmpty}from"./chunk-MI6HVYR2.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";
|
|
4
|
+
import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import fs from"fs";import path from"path";var DOCUMENT_TYPES=["order_form","individual_contract","other"];var DOCUMENT_TYPE_HELP="order_form\uFF1D\u6CE8\u6587\u66F8 / individual_contract\uFF1D\u500B\u5225\u5951\u7D04\u66F8 / other\uFF1D\u305D\u306E\u4ED6\u6848\u4EF6\u66F8\u985E";var MAGIC_BYTES={pdf:["%PDF-"],jpg:["\xFF\xD8\xFF"],jpeg:["\xFF\xD8\xFF"],png:["\x89PNG\r\n\n"],xlsx:["PK","PK","PK\x07\b"],docx:["PK","PK","PK\x07\b"],xls:["\xD0\xCF\xE0\xA1\xB1\xE1"],doc:["\xD0\xCF\xE0\xA1\xB1\xE1"]};var FILE_NAME_MAX_CHARS=255;var FIELDS=[
|
|
5
5
|
{kind:"text",flag:"--name",key:"document_name",label:"\u66F8\u985E\u540D",maxChars:255,summary:"\u66F8\u985E\u540D\uFF08create \u3067\u306F\u5FC5\u9808\uFF09"},{kind:"enum",flag:"--type",key:"document_type",values:DOCUMENT_TYPES,summary:`\u66F8\u985E\u7A2E\u5225\uFF08${DOCUMENT_TYPE_HELP}\u30FBcreate \u3067\u306F\u5FC5\u9808\uFF09`}];var COLUMNS=["document_id","estimate_id","document_type","document_type_label","document_name","current_version","updated_by_name","updated_at"];var VERSION_COLUMNS=[
|
|
6
6
|
"version_number","file_name","file_size","is_current","created_by_name","created_at"];var ESTIMATE_FLAG={name:"--estimate",summary:"\u898B\u7A4D\u306E ID\uFF08twp estimate list \u306E id \u5217\u306E\u6570\u5B57\u30FB\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\u898B\u7A4DID>"};var FILE_FLAG={name:"--file",summary:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B\u30D5\u30A1\u30A4\u30EB\uFF08PDF\u30FBJPEG\u30FBPNG\u30FBWord\u30FBExcel\u3002\u5FC5\u9808\uFF09",takesValue:true,placeholder:"<\
|
|
7
7
|
\u30D1\u30B9>"};var REF_HELP="--estimate\uFF08\u898B\u7A4D\u306E ID\uFF09\u304C\u5FC5\u9808\u3067\u3059\u3002<\u66F8\u985EID> \u306F twp estimate case-document list \u306E document_id \u5217\u306E\u5024\u3067\u3059\u3002\n\u9867\u5BA2\u3092\u307E\u305F\u3044\u3060\u4E00\u89A7\u306F twp customer case-document list --customer <\u9867\u5BA2> \u3067\u898B\u3089\u308C\u307E\u3059\u3002";var VIEW_FORBIDDEN=levelForbidden(CUSTOMER_LICENSE,"\u6848\u4EF6\u66F8\u985E\u3092\u898B\u308B\u306B\u306F\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{isRecord,pick}from"./chunk-
|
|
3
|
+
import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";var STORAGE_FORBIDDEN="\u30B9\u30C8\u30EC\u30FC\u30B8\u306E\u4F7F\u7528\u72B6\u6CC1\u306F\u7BA1\u7406\u8005\u3060\u3051\u304C\u53C2\u7167\u3067\u304D\u307E\u3059\u3002\u7BA1\u7406\u8005\u306E\u30A2\u30AB\u30A6\u30F3\u30C8\u3067\u30ED\u30B0\u30A4\u30F3\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u524D\u306E\u5BB9\u91CF\u691C\u67FB\u306F\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\u3067\u3082\u81EA\u52D5\u3067\u884C\u308F\u308C\u307E\u3059\uFF09\u3002";function checkResult(body){
|
|
4
4
|
const canUpload=isRecord(body)?body["can_upload"]:void 0;const result=isRecord(body)?body["check_result"]:void 0;if(typeof canUpload!=="boolean"||!isRecord(result)){throw new ApiResponseError("\u5BB9\u91CF\u691C\u67FB\u306E\u5FDC\u7B54\u306B can_upload / check_result \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}const text=key=>{const value=result[key];return typeof value==="string"?value:"\u4E0D\u660E"};return{canUpload,
|
|
5
5
|
softExceeded:result["soft_limit_exceeded"]===true,remaining:text("remaining_formatted"),quota:text("total_quota_formatted")}}async function checkUploadQuota(ctx,fileSize){const result=checkResult(await ctx.send(checkUploadPlan(fileSize)));if(!result.canUpload){throw new ApiRejectedError(`\u30C6\u30CA\u30F3\u30C8\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u5BB9\u91CF\u3092\u8D85\u3048\u308B\u305F\u3081\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3057\u307E\u305B\u3093\uFF08${fileSize} \u30D0\u30A4\u30C8\u30FB\u6B8B\u308A ${result.
|
|
6
6
|
remaining} / \u4E0A\u9650 ${result.quota}\uFF09\u3002\u4E0D\u8981\u306A\u30D5\u30A1\u30A4\u30EB\u3092\u524A\u9664\u3059\u308B\u304B\u3001\u7BA1\u7406\u8005\u306B\u5BB9\u91CF\u306E\u8FFD\u52A0\u3092\u4F9D\u983C\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}if(result.softExceeded){ctx.warn(`\u3053\u306E\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3067\u3001\u30C6\u30CA\u30F3\u30C8\u306E\u30B9\u30C8\u30EC\u30FC\u30B8\u4F7F\u7528\u91CF\u304C\u8B66\u544A\u306E\u95BE\u5024\u3092\u8D85\u3048\u307E\u3059\uFF08\u6B8B\u308A ${result.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
var EXIT_OK=0;var EXIT_FAILURE=1;var EXIT_USAGE=2;var EXIT_API_CLIENT=3;var EXIT_API_SERVER=4;var EXIT_AUTH=5;var EXIT_WAIT_TIMEOUT=6;var UsageError=class extends Error{constructor(message,hint){super(message);this.hint=hint;this.name="UsageError"}hint};var ApiResponseError=class extends Error{constructor(message){super(message);this.name="ApiResponseError"}};var ApiRejectedError=class extends Error{constructor(message){super(message);this.name="ApiRejectedError"}};var
|
|
4
|
-
super(message,options);this.name="NetworkError"}};export{EXIT_OK,EXIT_FAILURE,EXIT_USAGE,EXIT_API_CLIENT,EXIT_API_SERVER,EXIT_AUTH,EXIT_WAIT_TIMEOUT,UsageError,ApiResponseError,ApiRejectedError,NetworkError};
|
|
3
|
+
var EXIT_OK=0;var EXIT_FAILURE=1;var EXIT_USAGE=2;var EXIT_API_CLIENT=3;var EXIT_API_SERVER=4;var EXIT_AUTH=5;var EXIT_WAIT_TIMEOUT=6;var UsageError=class extends Error{constructor(message,hint){super(message);this.hint=hint;this.name="UsageError"}hint};var ApiResponseError=class extends Error{constructor(message){super(message);this.name="ApiResponseError"}};var ApiRejectedError=class extends Error{constructor(message){super(message);this.name="ApiRejectedError"}};var WaitTimeoutError=class extends Error{constructor(message){
|
|
4
|
+
super(message);this.name="WaitTimeoutError"}};var NetworkError=class extends Error{constructor(message,options){super(message,options);this.name="NetworkError"}};export{EXIT_OK,EXIT_FAILURE,EXIT_USAGE,EXIT_API_CLIENT,EXIT_API_SERVER,EXIT_AUTH,EXIT_WAIT_TIMEOUT,UsageError,ApiResponseError,ApiRejectedError,WaitTimeoutError,NetworkError};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
import{ApiRejectedError,ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";var TERMINAL_OK="completed";var TERMINAL_FAILED=["failed","cancelled"];var PENDING_STATUSES=["pending","processing"];var DEFAULT_WAIT_TIMEOUT_SECONDS=300;var MAX_WAIT_TIMEOUT_SECONDS=480;var DEFAULT_WAIT_INTERVAL_SECONDS=5;var MIN_WAIT_INTERVAL_SECONDS=1;function parseWaitOptions(flags){const wait=flags.has("--wait");const rawTimeout=flags.get("--wait-timeout");const rawInterval=flags.get("--wait-interval");if(!wait){if(rawTimeout!==void 0||rawInterval!==void 0){throw new UsageError("--wait-time\
|
|
4
|
+
out / --wait-interval \u306F --wait \u3068\u4E00\u7DD2\u306B\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","\u4F8B: twp api /v2/media/files/generate/video/<task_id> --wait --wait-timeout 300")}return null}const timeoutSeconds=seconds("--wait-timeout",rawTimeout,DEFAULT_WAIT_TIMEOUT_SECONDS,1,MAX_WAIT_TIMEOUT_SECONDS);const intervalSeconds=seconds("--wait-interval",rawInterval,Math.min(DEFAULT_WAIT_INTERVAL_SECONDS,timeoutSeconds),MIN_WAIT_INTERVAL_SECONDS,timeoutSeconds);return{timeoutSeconds,
|
|
5
|
+
intervalSeconds}}function seconds(flag,raw,fallback,min,max){if(raw===void 0)return fallback;const text=raw.trim();if(!/^\d+$/.test(text))throw new UsageError(`${flag} \u306B\u306F\u79D2\u6570\uFF08\u6574\u6570\uFF09\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044: ${raw}`);const value=Number(text);if(value<min||value>max){throw new UsageError(`${flag} \u306F ${min}\u301C${max} \u79D2\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08\u6307\u5B9A: ${value}\uFF09`,flag==="--wait-ti\
|
|
6
|
+
meout"?`\u4E0A\u9650 ${MAX_WAIT_TIMEOUT_SECONDS} \u79D2\u306F AI CLI \u306E Bash \u30C4\u30FC\u30EB\u306E\u4E0A\u9650\uFF08600\u79D2\uFF09\u306B\u53CE\u3081\u308B\u305F\u3081\u3067\u3059\u3002\u9577\u3044\u51E6\u7406\u306F\u9593\u3092\u7F6E\u3044\u3066\u6253\u3061\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`:void 0)}return value}function readWaitStatus(body){const status=pickStatus(body);if(status===void 0){throw new UsageError("--wait \u306F status \u3092\u8FD4\u3059\u5FDC\u7B54\u306B\u3057\u304B\u4F7F\u3048\u307E\u305B\u3093\uFF08\u5FDC\u7B54\u306B data.status / status \u304C\u3042\u308A\u307E\u305B\u3093\uFF09",
|
|
7
|
+
"\u975E\u540C\u671F\u51E6\u7406\u306E\u72B6\u614B\u306E\u30D1\u30B9\uFF08\u4F8B: /v2/media/files/generate/video/<task_id>\uFF09\u306B\u4ED8\u3051\u3066\u304F\u3060\u3055\u3044\u3002")}if(status===TERMINAL_OK)return{kind:"completed",status};if(TERMINAL_FAILED.includes(status))return{kind:"failed",status};if(PENDING_STATUSES.includes(status))return{kind:"pending",status};throw new ApiResponseError(`--wait \u304C\u77E5\u3089\u306A\u3044 status \u3067\u3059: ${status}\uFF08\u5F85\u3064\u306E\u306F ${PENDING_STATUSES.
|
|
8
|
+
join(" / ")}\u3001\u7D42\u308F\u308A\u306F ${[TERMINAL_OK,...TERMINAL_FAILED].join(" / ")}\uFF09`)}function pickStatus(body){if(!isRecord(body))return void 0;const data=body["data"];if(isRecord(data)&&typeof data["status"]==="string")return data["status"];if(typeof body["status"]==="string")return body["status"];return void 0}function isRecord(value){return value!==null&&typeof value==="object"&&!Array.isArray(value)}async function waitUntilTerminal(firstBody,options,deps){const startedAt=deps.startedAt??
|
|
9
|
+
deps.now();const deadline=startedAt+options.timeoutSeconds*1e3;const readStatus=deps.readStatus??readWaitStatus;let body=firstBody;let state=readStatus(body);let polls=1;while(state.kind==="pending"){if(deps.now()+options.intervalSeconds*1e3>deadline){return{body,state,polls,elapsedSeconds:elapsed(deps.now(),startedAt),timedOut:true}}await deps.sleep(options.intervalSeconds*1e3);let next;try{next=await deps.fetchAgain()}catch(pollError){return{body,state,polls,elapsedSeconds:elapsed(deps.now(),startedAt),
|
|
10
|
+
timedOut:false,pollError}}let nextState;try{nextState=readStatus(next)}catch(statusError){const pollError=statusError instanceof UsageError?new ApiResponseError("\u53D6\u308A\u76F4\u3057\u305F\u5FDC\u7B54\u306B status \u304C\u3042\u308A\u307E\u305B\u3093\uFF08\u6700\u521D\u306E\u5FDC\u7B54\u306B\u306F\u3042\u308A\u307E\u3057\u305F\uFF09"):statusError;return{body,state,polls,elapsedSeconds:elapsed(deps.now(),startedAt),timedOut:false,pollError}}body=next;state=nextState;polls+=1}return{body,state,
|
|
11
|
+
polls,elapsedSeconds:elapsed(deps.now(),startedAt),timedOut:false}}function elapsed(now,startedAt){return Math.round((now-startedAt)/1e3)}function describeWaitResult(result){const head=`\u5F85\u6A5F: ${result.polls} \u56DE\u53D6\u5F97\u30FB${result.elapsedSeconds} \u79D2`;if(result.pollError!==void 0){const reason=result.pollError instanceof Error?result.pollError.message:String(result.pollError);return{note:`${head}\u3002\u53D6\u308A\u76F4\u3057\u306B\u5931\u6557\u3057\u305F\u305F\u3081\u6253\u3061\u5207\u308A\u307E\u3057\u305F\uFF08${reason}\
|
|
12
|
+
\uFF09\u3002\u6700\u5F8C\u306B\u53D6\u308C\u305F\u5FDC\u7B54\uFF08status=${result.state.status}\u30FB**\u672A\u5B8C\u4E86**\uFF09\u3092 stdout \u306B\u51FA\u3057\u3066\u3044\u307E\u3059\u3002\u51E6\u7406\u306F\u30B5\u30FC\u30D0\u3067\u7D9A\u3044\u3066\u3044\u308B\u53EF\u80FD\u6027\u304C\u3042\u308B\u306E\u3067\u3001\u958B\u59CB\u304B\u3089\u6253\u3061\u76F4\u3055\u305A\u540C\u3058\u30B3\u30DE\u30F3\u30C9\u3092\u6253\u3061\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,error:result.pollError instanceof
|
|
13
|
+
Error?result.pollError:new Error(reason)}}if(result.timedOut){return{note:`${head}\u3002\u6B21\u306E\u53D6\u5F97\u304C\u4E0A\u9650\u3092\u8D8A\u3048\u308B\u305F\u3081\u6253\u3061\u5207\u308A\u307E\u3057\u305F\u3002status=${result.state.status} \u306E\u307E\u307E**\u672A\u5B8C\u4E86**\u3067\u3059\uFF08\u7D42\u4E86\u30B3\u30FC\u30C9 6\uFF09\u3002\u540C\u3058\u30B3\u30DE\u30F3\u30C9\u3092\u6253\u3061\u76F4\u3059\u3068\u7D9A\u304D\u3092\u5F85\u3066\u307E\u3059\u3002`,error:null}}if(result.state.kind===
|
|
14
|
+
"failed"){return{note:`${head}\u3002status=${result.state.status} \u3067\u7D42\u308F\u308A\u307E\u3057\u305F\u3002`,error:new ApiRejectedError(`\u975E\u540C\u671F\u51E6\u7406\u304C ${result.state.status} \u3067\u7D42\u308F\u308A\u307E\u3057\u305F\uFF08\u5FDC\u7B54\u306F stdout \u306B\u51FA\u3057\u3066\u3044\u307E\u3059\uFF09`)}}return{note:`${head}\u3002status=${result.state.status} \u3067\u7D42\u308F\u308A\u307E\u3057\u305F\u3002`,error:null}}export{parseWaitOptions,waitUntilTerminal,describeWaitResult};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{apiExit,currentRevisionOf,errorDetail,pickNumber,printDiff,readUtf8Strict,shellQuote,str,warnHiddenChars}from"./chunk-
|
|
3
|
+
import{apiExit,currentRevisionOf,errorDetail,pickNumber,printDiff,readUtf8Strict,shellQuote,str,warnHiddenChars}from"./chunk-A4LFG7MW.js";import{EXIT_API_CLIENT,EXIT_API_SERVER,EXIT_FAILURE,EXIT_OK,EXIT_USAGE}from"./chunk-VFPY2A23.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import{createHash}from"crypto";import*as fs from"fs";import*as path from"path";var DEFAULT_SKILL_DIR=".claude/commands";var NAME_PATTERN=/^[a-z][a-z0-9-]*$/;var NAME_MAX_LENGTH=64;var MAX_BODY_BYTES=35e4;var MAX_SKILLS_PER_PROJECT=200;function isValidSkillName(name){return name.length<=NAME_MAX_LENGTH&&NAME_PATTERN.test(name)}function skillDigest(body){return"sha256:"+createHash("sha256").update(Buffer.from(body,"utf8")).digest("hex")}function defaultFileKind(p){try{return fs.lstatSync(p).isFile()?"file":"other"}catch(e){return e.code==="ENOENT"?"missing":"other"}}function defaultWriteFile(p,c){
|
|
4
4
|
const tmp=path.join(path.dirname(p),`.${path.basename(p)}.tmp-${process.pid}`);try{fs.writeFileSync(tmp,c,{encoding:"utf8",flag:"wx"});fs.renameSync(tmp,p)}catch(e){fs.rmSync(tmp,{force:true});throw e}}async function runSkillCommand(deps,opts){const io={out:deps.out??(t=>void process.stdout.write(stripTerminalControls(t))),err:deps.err??(t=>void process.stderr.write(stripTerminalControls(t))),readFile:deps.readFile??readUtf8Strict,writeFile:deps.writeFile??defaultWriteFile,fileKind:deps.fileKind??
|
|
5
5
|
defaultFileKind,listDir:deps.listDir??(d=>{try{return fs.readdirSync(d)}catch{return null}}),mkdir:deps.mkdir??(d=>void fs.mkdirSync(d,{recursive:true}))};if(opts.name===void 0===!opts.all){io.err("\u30B9\u30AD\u30EB\u540D\u304B --all \u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\n");return EXIT_USAGE}if(opts.name!==void 0&&!isValidSkillName(opts.name)){io.err(`\u30B9\u30AD\u30EB\u540D\u304C\u4E0D\u6B63\u3067\u3059: ${opts.name}\uFF08\u82F1\u5C0F\u6587\u5B57\u3067\u59CB\u307E\u308A\u3001\u82F1\u5C0F\u6587\u5B57\u30FB\u6570\u5B57\
|
|
6
6
|
\u30FB\u30CF\u30A4\u30D5\u30F3\u3060\u3051\u306E${NAME_MAX_LENGTH}\u6587\u5B57\u4EE5\u5185\uFF09
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
+
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
+
var DOMAIN_NAMES=["agent-loop","ai-review-reason","analysis","announcement","attendance","backlog","budget","business-place","company","contract","customer","department","deposit","estimate","inquiry","invoice","job-title","leave","media","meeting","note","notification","onedrive","outlook","payee","position","project","prospect","purchase","receivable","report","rounding-setting","seal-impression","shift","storage","supplier-payment","support","task","teams","user","wiki","workchange","worker-a\
|
|
4
|
+
gent","workflow"];function isDomainName(value){return value!==void 0&&DOMAIN_NAMES.includes(value)}var HELP_TOKEN="help";var API_TOKEN="api";export{DOMAIN_NAMES,isDomainName,HELP_TOKEN,API_TOKEN};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{salesFeatureDenied}from"./chunk-
|
|
4
|
-
import{requireResolved,withResolved}from"./chunk-
|
|
3
|
+
import{salesFeatureDenied}from"./chunk-FANDYQCM.js";import{featureLicenseGuidance}from"./chunk-CF3ZZKCZ.js";import{charCount,readBody}from"./chunk-6LSQCOCJ.js";import{isExactNumericId}from"./chunk-Q2KIETMB.js";import{repeatedValues}from"./chunk-7UB4I3JF.js";import{ApiError}from"./chunk-IF2K4PM5.js";import{NotLoggedInError,SessionExpiredError}from"./chunk-XNLIEUAW.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,envelopePaging,nonEmpty,positiveInteger}from"./chunk-MI6HVYR2.js";
|
|
4
|
+
import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,ApiResponseError,NetworkError,UsageError}from"./chunk-VFPY2A23.js";var SALES_PATH="/api/v2/sales";var REASONS_PATH=`${SALES_PATH}/ai-review-reasons`;function documentForbidden(body){if(salesFeatureDenied(body))return featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406");const reason=body?.error;if(typeof reason==="string"&&reason.endsWith("\u6A29\u9650\u304C\u3042\u308A\u307E\u305B\u3093")){return`${reason}\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306B\u7D10\u3065\u304F\u66F8\u985E\u306F\u305D\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30E1\u30F3\u30D0\u30FC\u3001\u7D10\u3065\u304B\u306A\u3044\u66F8\u985E\u306F\u4F5C\u6210\u8005\u30FB\u62C5\u5F53\u8005\u3068\u7BA1\u7406\u8005\u3060\u3051\u304C\u6271\u3048\u307E\u3059\uFF09`}
|
|
5
5
|
return void 0}function reasonsForbidden(body){if(body?.error==="permission_denied")return featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406");return"\u7406\u7531\u306E\u6A2A\u65AD\u4E00\u89A7\u30FB\u6587\u6848\u751F\u6210\u30FBPR \u4F5C\u6210\u306F\u8CA9\u58F2\u7BA1\u7406\u306E\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059\uFF08\u66F8\u985E\u3092\u8DE8\u3044\u3067\u7406\u7531\u3092\u8AAD\u3080\u305F\u3081\uFF09\u3002\u30C6\u30CA\u30F3\u30C8\u304C\u8CA9\u58F2\u7BA1\u7406\u3092\u5951\u7D04\u3057\u3066\u3044\u308B\u304B\u30FB\u3042\u306A\u305F\u306E\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u304B\u3092\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002"}
|
|
6
6
|
var ESTIMATE={name:"estimate",label:"\u898B\u7A4D",segment:"estimates"};var INVOICE={name:"invoice",label:"\u8ACB\u6C42",segment:"invoices"};var CONTRACT={name:"contract",label:"\u53D6\u5F15\u5951\u7D04",segment:"contracts"};var JUDGMENTS={no_issue:"\u78BA\u8A8D\u3057\u305F\u304C\u554F\u984C\u306A\u3044\u3068\u5224\u65AD\u3057\u305F",corrected:"\u6307\u6458\u3092\u53D7\u3051\u3066\u66F8\u985E\u3092\u4FEE\u6B63\u3057\u305F",not_applicable:"\u3053\u306E\u6848\u4EF6\u306B\u306F\u5F53\u3066\u306F\u307E\u3089\u306A\u3044\u6307\u6458\u3060\u3068\u5224\u65AD\u3057\u305F"};
|
|
7
7
|
var REASON_MAX_CHARS=2e3;var LABEL_MAX_CHARS=255;var CRITERION_RE=/^[A-Za-z0-9_.:-]{1,128}$/;var MAX_REASONS=20;var DRAFT_MAX_CHARS=8e3;var TARGET_PREFIX="checklists/";var DEFAULT_TARGET="checklists/quality/estimation-billing-integrity-check.md";var WAIT_POLL_INTERVAL_MS=5e3;var WAIT_DEFAULT_SECONDS=300;var WAIT_MAX_SECONDS=540;var IN_FLIGHT=new Set(["pending","processing"]);var sleep=ms=>new Promise(resolve=>setTimeout(resolve,ms));function refusedBeforeSending(err){return err instanceof ApiError&&
|
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-YLM54X35.js";import{parseArgv}from"./chunk-
|
|
4
|
+
import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chunk-FMJUPLDG.js";import"./chunk-NAUH75MM.js";import"./chunk-ZGHEF45T.js";import"./chunk-QQRJLH6B.js";import"./chunk-VSJBJXZO.js";var VERSION=true?"0.50.0":"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
|
|
@@ -99,6 +99,12 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
99
99
|
twp project mine \u81EA\u5206\u304C\u30E1\u30F3\u30D0\u30FC\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u89A7\u3059\u308B
|
|
100
100
|
twp project manhours \u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u5DE5\u6570\u3092\u30E6\u30FC\u30B6\u30FC\u3054\u3068\u306B\u8868\u793A\u3059\u308B\uFF08--from/--to \u306F YYYY-MM-DD\u30FB\u7BA1\u7406\u8005\uFF09
|
|
101
101
|
twp project workload \u30E1\u30F3\u30D0\u30FC\u3054\u3068\u306E\u672A\u5B8C\u4E86\u30BF\u30B9\u30AF\u4EF6\u6570\u30FB\u898B\u7A4D\u6642\u9593
|
|
102
|
+
twp project risk \u30EA\u30B9\u30AF\u5206\u6790\uFF08\u671F\u9650\u8D85\u904E\u30FB\u6EDE\u7559\u306A\u3069\u306E\u30BF\u30B9\u30AF\u3092\u9AD8 \u2192 \u4E2D\u306E\u9806\u306B\uFF09
|
|
103
|
+
twp project profit \u53CE\u652F\u5206\u6790\uFF08\u6708\u3054\u3068\u306E\u58F2\u4E0A\u30FB\u539F\u4FA1\u30FB\u7740\u5730\u5229\u76CA\u30FB\u7BA1\u7406\u8005\uFF09
|
|
104
|
+
twp project process list
|
|
105
|
+
\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u5DE5\u7A0B
|
|
106
|
+
twp project process create
|
|
107
|
+
\u5DE5\u7A0B\u3092\u767B\u9332\u3059\u308B\uFF08--process \u3067\u5DE5\u7A0B\u30DE\u30B9\u30BF\u3092\u6307\u5B9A\u30FB\u7BA1\u7406\u8005\uFF09
|
|
102
108
|
twp project member create <\u30E6\u30FC\u30B6\u30FC>
|
|
103
109
|
\u30E1\u30F3\u30D0\u30FC\u3092\u8FFD\u52A0\u3059\u308B\uFF08--role \u304C\u8981\u308B\u30FB\u7A3C\u50CD\u671F\u9593\u306F --period-file\uFF09
|
|
104
110
|
twp project member update <\u30E1\u30F3\u30D0\u30FC>
|
|
@@ -148,8 +154,34 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
148
154
|
twp media upload \u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u3059\u308B\uFF08--file \u5FC5\u9808\u30FB3\u5F80\u5FA9\u30921\u30B3\u30DE\u30F3\u30C9\u3067\uFF09
|
|
149
155
|
twp media download <\u30D5\u30A1\u30A4\u30EBID>
|
|
150
156
|
\u30D5\u30A1\u30A4\u30EB\u3092\u66F8\u304D\u51FA\u3059\uFF08--out \u5FC5\u9808\uFF09
|
|
157
|
+
twp media get <\u30D5\u30A1\u30A4\u30EBID>
|
|
158
|
+
\u30D5\u30A1\u30A4\u30EB\u306E\u8A73\u7D30\uFF08\u540D\u524D\u30FB\u8AAC\u660E\u30FB\u30BF\u30B0\u30FB\u516C\u958B\u72B6\u614B\uFF09
|
|
159
|
+
twp media update <\u30D5\u30A1\u30A4\u30EBID>
|
|
160
|
+
\u540D\u524D\u30FB\u8AAC\u660E\u30FB\u30BF\u30B0\u3092\u5909\u66F4\u3059\u308B\uFF08--tag \u306F\u7F6E\u304D\u63DB\u3048\uFF09
|
|
161
|
+
twp media move <\u30D5\u30A1\u30A4\u30EBID>
|
|
162
|
+
\u5225\u306E\u30D5\u30A9\u30EB\u30C0\u30FB\u30B9\u30B3\u30FC\u30D7\u3078\u79FB\u3059\uFF08--folder / --project / --personal\uFF09
|
|
163
|
+
twp media publish <\u30D5\u30A1\u30A4\u30EBID>
|
|
164
|
+
\u30D5\u30A1\u30A4\u30EB\u3092\u516C\u958B\u3059\u308B
|
|
165
|
+
twp media unpublish <\u30D5\u30A1\u30A4\u30EBID>
|
|
166
|
+
\u30D5\u30A1\u30A4\u30EB\u3092\u975E\u516C\u958B\u306B\u3059\u308B
|
|
167
|
+
twp media archive <\u30D5\u30A1\u30A4\u30EBID>
|
|
168
|
+
\u30D5\u30A1\u30A4\u30EB\u3092\u30A2\u30FC\u30AB\u30A4\u30D6\u3059\u308B
|
|
169
|
+
twp media schedule <\u30D5\u30A1\u30A4\u30EBID>
|
|
170
|
+
\u516C\u958B\u671F\u9593\u3092\u4E88\u7D04\u3059\u308B\uFF08--start \u306F\u30BF\u30A4\u30E0\u30BE\u30FC\u30F3\u4ED8\u304D\u30FB--clear \u3067\u89E3\u9664\uFF09
|
|
171
|
+
twp media restore <\u30D5\u30A1\u30A4\u30EBID>
|
|
172
|
+
\u30B4\u30DF\u7BB1\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u5143\u306B\u623B\u3059
|
|
151
173
|
twp media delete <\u30D5\u30A1\u30A4\u30EBID>
|
|
152
|
-
\u30D5\u30A1\u30A4\u30EB\u3092\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
174
|
+
\u30D5\u30A1\u30A4\u30EB\u3092\u30B4\u30DF\u7BB1\u3078\u79FB\u3059\uFF08--yes \u304C\u8981\u308B\u30FB--permanent \u3067\u30B4\u30DF\u7BB1\u304B\u3089\u5B8C\u5168\u524A\u9664\uFF09
|
|
175
|
+
twp media trash list \u30B4\u30DF\u7BB1\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u4E00\u89A7\u3059\u308B
|
|
176
|
+
twp media trash empty \u30B4\u30DF\u7BB1\u3092\u7A7A\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\u30FB\u4EF6\u6570\u3092\u5148\u306B\u8868\u793A\uFF09
|
|
177
|
+
twp media recent list \u6700\u8FD1\u95B2\u89A7\u3057\u305F\u30D5\u30A1\u30A4\u30EB
|
|
178
|
+
twp media tag list \u30E1\u30C7\u30A3\u30A2\u306E\u30BF\u30B0\u3092\u4E00\u89A7\u3059\u308B\uFF08--with-count \u3067\u4F7F\u7528\u6570\uFF09
|
|
179
|
+
twp media tag create <\u30BF\u30B0>
|
|
180
|
+
\u30BF\u30B0\u3092\u767B\u9332\u3059\u308B
|
|
181
|
+
twp media tag merge <\u65E7\u30BF\u30B0>
|
|
182
|
+
\u65E7\u30BF\u30B0\u3092\u65B0\u30BF\u30B0\u3078\u4ED8\u3051\u66FF\u3048\u308B\uFF08--into\u30FB--yes \u304C\u8981\u308B\u30FB\u7BA1\u7406\u8005\uFF09
|
|
183
|
+
twp media tag delete <\u30BF\u30B0>
|
|
184
|
+
\u30BF\u30B0\u3092\u5168\u30D5\u30A1\u30A4\u30EB\u304B\u3089\u5916\u3057\u3066\u6D88\u3059\uFF08--yes \u304C\u8981\u308B\u30FB\u7BA1\u7406\u8005\uFF09
|
|
153
185
|
twp media bulk-publish <\u30D5\u30A1\u30A4\u30EBID>...
|
|
154
186
|
\u8907\u6570\u306E\u30D5\u30A1\u30A4\u30EB\u3092\u516C\u958B\u3059\u308B
|
|
155
187
|
twp media bulk-unpublish <\u30D5\u30A1\u30A4\u30EBID>...
|
|
@@ -216,6 +248,14 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
216
248
|
1\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u30B9\u30B3\u30A2\u306E\u63A8\u79FB\uFF08--project\uFF09
|
|
217
249
|
twp analysis project-health insights
|
|
218
250
|
AI \u306E\u6240\u898B\u3092\u751F\u6210\u3059\u308B\uFF08AI \u30AF\u30EC\u30B8\u30C3\u30C8\u3092\u6D88\u8CBB\u30FB--yes \u304C\u8981\u308B\uFF09
|
|
251
|
+
twp analysis profit list
|
|
252
|
+
\u4F1A\u8A08\u5E74\u5EA6\u306E\u53CE\u652F\u5206\u6790\uFF08--fiscal-year \u304C\u8981\u308B\u30FB--scope project|user\uFF09
|
|
253
|
+
twp analysis staff-kpi list
|
|
254
|
+
\u90E8\u7F72\u306E\u4EBA\u6750KPI\uFF08--department \u304C\u8981\u308B\u30FB--month\u30FB--user\uFF09
|
|
255
|
+
twp analysis staff-kpi estimates
|
|
256
|
+
\u4EBA\u6750KPI\u306E\u96C6\u8A08\u5BFE\u8C61\u306E\u898B\u7A4D\uFF08--department \u304C\u8981\u308B\uFF09
|
|
257
|
+
twp analysis staff-kpi settings
|
|
258
|
+
\u90E8\u7F72\u306E\u4EBA\u6750KPI\u306E\u8A2D\u5B9A\uFF08--department \u304C\u8981\u308B\uFF09
|
|
219
259
|
twp budget dashboard \u5E74\u5EA6\u306E\u4E88\u5B9F\uFF08\u5168\u793E\u3068\u90E8\u7F72\u3054\u3068\u306E\u76EE\u6A19\u30FB\u898B\u8FBC\u30FB\u5B9F\u7E3E\u30FB\u5DEE\u7570\u30FB--year\uFF09
|
|
220
260
|
twp budget summary \u58F2\u4E0A\u30FB\u5229\u76CA\u306E\u76EE\u6A19\u3068\u5B9F\u7E3E\u306E\u5408\u8A08\uFF08--department \u3067\u90E8\u7F72\u3068\u914D\u4E0B\uFF09
|
|
221
261
|
twp budget breakdown \u90E8\u7F72\u884C\u306E\u5185\u8A33\uFF08\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u30FB\u62C5\u5F53\u8005\u30FB\u78BA\u5EA6\u30FB\u6848\u4EF6\u3054\u3068\u3002\u7701\u304F\u3068\u672A\u5272\u5F53\uFF09
|
|
@@ -239,6 +279,35 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
239
279
|
twp leave request \u6709\u7D66\u3092\u7533\u8ACB\u3059\u308B\uFF08--date \u304B --from/--to\u30FB--type\u30FB\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC\u3067\u8D77\u7968\u3057\u3066\u63D0\u51FA\uFF09
|
|
240
280
|
twp workchange list \u6708\u306E\u52E4\u52D9\u5909\u66F4\uFF08--month\u30FB--me \u3067\u81EA\u5206\u306E\u5206\u30FB\u7121\u3051\u308C\u3070\u5168\u54E1\u5206\uFF1D\u7BA1\u7406\u8005\uFF09
|
|
241
281
|
twp shift list \u6708\u306E\u30B7\u30D5\u30C8\uFF08--month\u30FB--me \u3067\u81EA\u5206\u306E\u5206\u30FB\u7121\u3051\u308C\u3070\u5168\u54E1\u5206\uFF1D\u7BA1\u7406\u8005\uFF09
|
|
282
|
+
twp worker-agent list \u30EF\u30FC\u30AB\u30FC\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u4E00\u89A7\u3059\u308B\uFF08\u6709\u52B9/\u7121\u52B9\u30FB\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u30FB\u6B21\u56DE\u5B9F\u884C\u4E88\u5B9A\uFF09
|
|
283
|
+
twp worker-agent get <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8>
|
|
284
|
+
\u30EF\u30FC\u30AB\u30FC\u30A8\u30FC\u30B8\u30A7\u30F3\u30C81\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08ID \u304B\u540D\u524D\uFF09
|
|
285
|
+
twp worker-agent tools \u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306B\u8A31\u53EF\u3067\u304D\u308B\u30C4\u30FC\u30EB\u3092\u4E00\u89A7\u3059\u308B\uFF08--keyword\u30FB--category\uFF09
|
|
286
|
+
twp worker-agent tool get <\u30C4\u30FC\u30EB\u540D>
|
|
287
|
+
\u30C4\u30FC\u30EB1\u4EF6\u306E\u8A73\u7D30\uFF08\u5165\u529B\u30B9\u30AD\u30FC\u30DE\u30FB\u5FC5\u8981\u306A\u6A29\u9650\uFF09
|
|
288
|
+
twp worker-agent limits \u5B9F\u884C\u56DE\u6570\u30FB\u6709\u52B9\u5316\u6570\u306E\u4E0A\u9650\u3068\u4ECA\u65E5\u306E\u4F7F\u7528\u6570\uFF08--agent \u3067\u305D\u306E\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306E\u56DE\u6570\u3082\uFF09
|
|
289
|
+
twp worker-agent run list <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8>
|
|
290
|
+
\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u306E\u5B9F\u884C\u5C65\u6B74\u3092\u4E00\u89A7\u3059\u308B\uFF08\u65B0\u3057\u3044\u9806\uFF09
|
|
291
|
+
twp worker-agent run get <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> <\u5B9F\u884CID>
|
|
292
|
+
\u5B9F\u884C1\u4EF6\u306E\u7D50\u679C\u3092\u8868\u793A\u3059\u308B\uFF08\u6700\u7D42\u8981\u7D04\u3092\u5148\u982D\u306B\uFF09
|
|
293
|
+
twp worker-agent run steps <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> <\u5B9F\u884CID>
|
|
294
|
+
\u5B9F\u884C\u306E\u30B9\u30C6\u30C3\u30D7\u30ED\u30B0\u3092\u6642\u7CFB\u5217\u3067\u4E00\u89A7\u3059\u308B\uFF08--type \u3067\u7A2E\u5225\u3092\u7D5E\u308B\uFF09
|
|
295
|
+
twp worker-agent run stats <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> <\u5B9F\u884CID>
|
|
296
|
+
\u5B9F\u884C\u306E\u30B9\u30C6\u30C3\u30D7\u3092\u7A2E\u5225\u30FB\u30C4\u30FC\u30EB\u3054\u3068\u306B\u96C6\u8A08\u3059\u308B
|
|
297
|
+
twp worker-agent create --name <\u540D\u524D> --instructions-file <\u30D1\u30B9> --tool <\u30C4\u30FC\u30EB\u540D> --schedule <\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB>
|
|
298
|
+
\u30EF\u30FC\u30AB\u30FC\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u4F5C\u6210\u3059\u308B\uFF08--schedule interval:30m / daily:09:00 / weekly:mon@09:00 / monthly:1@09:00\uFF09
|
|
299
|
+
twp worker-agent update <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8>
|
|
300
|
+
\u8A2D\u5B9A\u3092\u5909\u3048\u308B\uFF08\u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u3002--tool \u306F\u4E38\u3054\u3068\u7F6E\u304D\u63DB\u3048\uFF09
|
|
301
|
+
twp worker-agent enable <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8>
|
|
302
|
+
\u6709\u52B9\u5316\u3059\u308B\uFF08\u30B9\u30B1\u30B8\u30E5\u30FC\u30EB\u3069\u304A\u308A\u306E\u5B9A\u671F\u5B9F\u884C\u3092\u59CB\u3081\u308B\uFF09
|
|
303
|
+
twp worker-agent disable <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8>
|
|
304
|
+
\u7121\u52B9\u5316\u3059\u308B\uFF08\u5B9A\u671F\u5B9F\u884C\u3092\u6B62\u3081\u308B\uFF09
|
|
305
|
+
twp worker-agent delete <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> --yes
|
|
306
|
+
\u30EF\u30FC\u30AB\u30FC\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8\u3092\u524A\u9664\u3059\u308B
|
|
307
|
+
twp worker-agent run start <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> --yes
|
|
308
|
+
\u4ECA\u3059\u3050\u5B9F\u884C\u3059\u308B\uFF08--simulate \u3067\u66F8\u304D\u8FBC\u307E\u306A\u3044\u30FB--wait \u3067\u7D42\u308F\u308B\u307E\u3067\u5F85\u3064\uFF09
|
|
309
|
+
twp worker-agent run cancel <\u30A8\u30FC\u30B8\u30A7\u30F3\u30C8> <\u5B9F\u884CID>
|
|
310
|
+
\u5B9F\u884C\u3092\u6B62\u3081\u308B
|
|
242
311
|
twp workflow applicable \u81EA\u5206\u304C\u7533\u8ACB\u3067\u304D\u308B\u7533\u8ACB\u66F8\uFF08--category \u3067\u30AB\u30C6\u30B4\u30EA\u306E\u7533\u8ACB\u66F8\u30FB\u975E\u8868\u793A\u3082\u542B\u3080\uFF09
|
|
243
312
|
twp workflow list \u7533\u8ACB\u66F8\u306E\u5B9A\u7FA9\u306E\u4E00\u89A7\uFF08\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC\u306E\u7BA1\u7406\u8005\uFF09
|
|
244
313
|
twp workflow get <\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC>
|
|
@@ -397,6 +466,18 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
397
466
|
\u554F\u3044\u5408\u308F\u305B\u30AB\u30C6\u30B4\u30EA\u3092\u4F5C\u6210\u3059\u308B\uFF08--sort last \u3067\u672B\u5C3E\u306B\u4E26\u3079\u308B\u30FB\u7BA1\u7406\u8005\u306E\u307F\uFF09
|
|
398
467
|
twp inquiry category update <\u30AB\u30C6\u30B4\u30EA>
|
|
399
468
|
\u554F\u3044\u5408\u308F\u305B\u30AB\u30C6\u30B4\u30EA\u3092\u66F4\u65B0\u3059\u308B\uFF08--notify \u3067\u901A\u77E5\u5148\u3092\u7F6E\u304D\u63DB\u3048\u308B\u30FB\u7BA1\u7406\u8005\u306E\u307F\uFF09
|
|
469
|
+
twp support list \u81EA\u5206\u304C\u51FA\u3057\u305F\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u3092\u4E00\u89A7\u3059\u308B\uFF08--status \u3067\u7D5E\u308A\u8FBC\u307F\uFF09
|
|
470
|
+
twp support get <ID> \u30B5\u30DD\u30FC\u30C8\u4F9D\u983C1\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u30B3\u30E1\u30F3\u30C8\u306E\u7D4C\u904E\u3092\u542B\u3080\uFF09
|
|
471
|
+
twp support create \u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u3092\u51FA\u3059\uFF08--attach \u3067\u6DFB\u4ED83\u4EF6\u307E\u3067\uFF09
|
|
472
|
+
twp support close <ID> \u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u3092\u5B8C\u4E86\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
473
|
+
twp support reinquire <ID>
|
|
474
|
+
\u56DE\u7B54\u6E08\u307F\u306E\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u3092\u518D\u554F\u3044\u5408\u308F\u305B\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
475
|
+
twp support withdraw <ID>
|
|
476
|
+
\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u3092\u53D6\u308A\u4E0B\u3052\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
477
|
+
twp support comment create <ID>
|
|
478
|
+
\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u306B\u30B3\u30E1\u30F3\u30C8\u3059\u308B\uFF08--attach \u3067\u6DFB\u4ED83\u4EF6\u307E\u3067\uFF09
|
|
479
|
+
twp support category list
|
|
480
|
+
\u30B5\u30DD\u30FC\u30C8\u4F9D\u983C\u306E\u30AB\u30C6\u30B4\u30EA\u3092\u4E00\u89A7\u3059\u308B
|
|
400
481
|
twp notification list \u81EA\u5206\u5B9B\u3066\u306E\u901A\u77E5\u3092\u4E00\u89A7\u3059\u308B\uFF08--unread \u3067\u672A\u8AAD\u3060\u3051\uFF09
|
|
401
482
|
twp notification get <\u901A\u77E5ID>
|
|
402
483
|
\u81EA\u5206\u5B9B\u3066\u306E\u901A\u77E51\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B
|
|
@@ -407,6 +488,20 @@ import{GLOBAL_OPTIONS_HELP}from"./chunk-YLM54X35.js";import{parseArgv}from"./chu
|
|
|
407
488
|
\u81EA\u5206\u5B9B\u3066\u306E\u901A\u77E51\u4EF6\u3092\u65E2\u8AAD\u306B\u3059\u308B
|
|
408
489
|
twp notification read-all
|
|
409
490
|
\u81EA\u5206\u5B9B\u3066\u306E\u672A\u8AAD\u306E\u901A\u77E5\u3092\u307E\u3068\u3081\u3066\u65E2\u8AAD\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
491
|
+
twp announcement list \u81EA\u5206\u306B\u5C4A\u3044\u3066\u3044\u308B\u304A\u77E5\u3089\u305B\u3092\u4E00\u89A7\u3059\u308B\uFF08--unread / --needs-confirm\uFF09
|
|
492
|
+
twp announcement get <\u304A\u77E5\u3089\u305BID>
|
|
493
|
+
\u304A\u77E5\u3089\u305B1\u4EF6\u306E\u672C\u6587\u3068\u8FD4\u4FE1\u3092\u8868\u793A\u3059\u308B\uFF08--output text \u3067\u8AAD\u3081\u308B\u5F62\uFF09
|
|
494
|
+
twp announcement counts \u81EA\u5206\u306E\u672A\u8AAD\u306E\u304A\u77E5\u3089\u305B\u4EF6\u6570\u3092\u8868\u793A\u3059\u308B
|
|
495
|
+
twp announcement read <\u304A\u77E5\u3089\u305BID>...
|
|
496
|
+
\u304A\u77E5\u3089\u305B\u3092\u65E2\u8AAD\u306B\u3059\u308B
|
|
497
|
+
twp announcement read-all
|
|
498
|
+
\u304A\u77E5\u3089\u305B\u3092\u307E\u3068\u3081\u3066\u65E2\u8AAD\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
499
|
+
twp announcement confirm <\u304A\u77E5\u3089\u305BID>
|
|
500
|
+
\u304A\u77E5\u3089\u305B\u3092\u300C\u78BA\u8A8D\u3057\u307E\u3057\u305F\u300D\u306B\u3059\u308B\uFF08--yes \u304C\u8981\u308B\uFF09
|
|
501
|
+
twp announcement reply list <\u304A\u77E5\u3089\u305BID>
|
|
502
|
+
\u304A\u77E5\u3089\u305B\u3078\u306E\u8FD4\u4FE1\u3092\u4E00\u89A7\u3059\u308B
|
|
503
|
+
twp announcement reply create <\u304A\u77E5\u3089\u305BID>
|
|
504
|
+
\u304A\u77E5\u3089\u305B\u3078\u8FD4\u4FE1\u3059\u308B\uFF08--body-file\uFF09
|
|
410
505
|
twp report list \u81EA\u5206\u304C\u66F8\u3044\u305F\u30EC\u30DD\u30FC\u30C8\uFF08\u65E5\u5831\uFF09\u3092\u4E00\u89A7\u3059\u308B\uFF08--format\u30FB--status\u30FB--keyword\uFF09
|
|
411
506
|
twp report get <\u30EC\u30DD\u30FC\u30C8ID>
|
|
412
507
|
\u30EC\u30DD\u30FC\u30C81\u4EF6\u306E\u8A73\u7D30\u3092\u8868\u793A\u3059\u308B\uFF08\u672C\u6587\u30FB\u30B3\u30E1\u30F3\u30C8\u3092\u542B\u3080\uFF09
|
|
@@ -850,15 +945,15 @@ TUI \u5185:
|
|
|
850
945
|
TWP API \u3092\u547C\u3079\u307E\u3059\u3002TWP API \u306E\u30C4\u30FC\u30EB\u306F\u65E2\u5B9A\u3067\u78BA\u8A8D\u304C\u51FA\u307E\u3059\uFF08-p \u3067\u306F\u62D2\u5426\u3002--allowed-tools \u3067\u540D\u524D\u3092\u8A31\u53EF\uFF09\u3002
|
|
851
946
|
\u4F1A\u8A71\u30FB\u30ED\u30FC\u30AB\u30EB\u30C4\u30FC\u30EB\uFF08\u30D5\u30A1\u30A4\u30EB\u30FB\u30B3\u30DE\u30F3\u30C9\u30FBgit\uFF09\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u30AF\u30EC\u30B8\u30C3\u30C8\u3067\u5B9F\u969B\u306B\u52D5\u304D\u307E\u3059\u3002
|
|
852
947
|
`;function ignoreEpipe(stream){stream.on("error",err=>{if(err.code==="EPIPE")process.exit(0);throw err})}async function main(){const nodeMajor=Number(process.versions.node.split(".")[0]);if(nodeMajor<22){process.stderr.write(`twp-cli \u306B\u306F Node.js 22 \u4EE5\u4E0A\u304C\u5FC5\u8981\u3067\u3059\uFF08\u73FE\u5728: ${process.versions.node}\uFF09
|
|
853
|
-
`);process.exit(1)}ignoreEpipe(process.stdout);ignoreEpipe(process.stderr);if(process.env["TWP_AUTO_UPDATE_WORKER"]==="1"){const{runAutoUpdateWorker}=await import("./auto-update-worker-ZKODJ45K.js");await runAutoUpdateWorker().catch(()=>void 0);return}const[first,...rest]=process.argv.slice(2);if(first==="__complete"||first==="completion"){const completion=await import("./completion-
|
|
854
|
-
const[{loadDomain},{loadUserConfig}]=await Promise.all([import("./registry-
|
|
948
|
+
`);process.exit(1)}ignoreEpipe(process.stdout);ignoreEpipe(process.stderr);if(process.env["TWP_AUTO_UPDATE_WORKER"]==="1"){const{runAutoUpdateWorker}=await import("./auto-update-worker-ZKODJ45K.js");await runAutoUpdateWorker().catch(()=>void 0);return}const[first,...rest]=process.argv.slice(2);if(first==="__complete"||first==="completion"){const completion=await import("./completion-3F2GJNGC.js");if(first==="completion"){process.exitCode=completion.runCompletion(rest,process.stdout,process.stderr);return}
|
|
949
|
+
const[{loadDomain},{loadUserConfig}]=await Promise.all([import("./registry-H4NP4HUQ.js"),import("./config-3CNEQ7KN.js")]);process.exitCode=await completion.runComplete(rest,process.stdout,{loadDomain,profileNames:()=>Object.keys(loadUserConfig().profiles??{})});return}if(first==="configure"){const autoUpdate2=await import("./auto-update-PS5HUWVH.js");autoUpdate2.registerRunning();autoUpdate2.onStartup(VERSION);const{runConfigure}=await import("./configure-XH33RB27.js");process.exitCode=
|
|
855
950
|
await runConfigure(rest);return}const args=parseArgv(process.argv.slice(2));if(args.command==="version"){process.stdout.write(`${VERSION}
|
|
856
951
|
`);return}if(args.command==="help"){process.stdout.write(HELP);return}if(args.unknown.length>0){process.stderr.write(`\u4E0D\u660E\u306A\u5F15\u6570: ${args.unknown.join(" ")}
|
|
857
952
|
|
|
858
|
-
${HELP}`);process.exitCode=2;return}const autoUpdate=await import("./auto-update-PS5HUWVH.js");autoUpdate.registerRunning();if(args.command==="task-loop"){process.env[autoUpdate.DISABLE_ENV]="1"}else if(args.command!=="update"){autoUpdate.onStartup(VERSION)}if(args.command==="domain"&&args.domain!==void 0){const{runDomain}=await import("./run-
|
|
859
|
-
domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes,refresh:args.refresh},version:VERSION});return}if(args.command==="api"){const{runApiCommand}=await import("./api-command-
|
|
860
|
-
void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes},version:VERSION});return}if(args.command==="update"){const{runUpdate}=await import("./update-EYFT7STE.js");process.exitCode=await runUpdate({...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}if(args.command==="login"||args.command==="logout"||args.command==="whoami"){const{runLogin,runLogout,runWhoami}=await import("./commands-
|
|
861
|
-
const options={profile:args.profile,method:args.loginMethod,tenant:args.tenant,noBrowser:args.loginNoBrowser,cliVersion:VERSION,force:args.logoutForce,...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{}};const runner=args.command==="login"?runLogin:args.command==="logout"?runLogout:runWhoami;process.exitCode=await runner(options);return}if(args.command==="task-loop"){const{runTaskLoop}=await import("./commands-
|
|
953
|
+
${HELP}`);process.exitCode=2;return}const autoUpdate=await import("./auto-update-PS5HUWVH.js");autoUpdate.registerRunning();if(args.command==="task-loop"){process.env[autoUpdate.DISABLE_ENV]="1"}else if(args.command!=="update"){autoUpdate.onStartup(VERSION)}if(args.command==="domain"&&args.domain!==void 0){const{runDomain}=await import("./run-TNFPATQF.js");process.exitCode=await runDomain({domain:args.domain,...args.operation!==void 0?{operation:args.operation}:{},argv:args.domainArgv,help:args.
|
|
954
|
+
domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes,refresh:args.refresh},version:VERSION});return}if(args.command==="api"){const{runApiCommand}=await import("./api-command-VFFV7BD4.js");process.exitCode=await runApiCommand({argv:args.domainArgv,help:args.domainHelp,globals:{...args.profile!==void 0?{profile:args.profile}:{},...args.output!==
|
|
955
|
+
void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{},dryRun:args.dryRun,debug:args.debug,yes:args.yes},version:VERSION});return}if(args.command==="update"){const{runUpdate}=await import("./update-EYFT7STE.js");process.exitCode=await runUpdate({...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}if(args.command==="login"||args.command==="logout"||args.command==="whoami"){const{runLogin,runLogout,runWhoami}=await import("./commands-ZZGY6P3B.js");
|
|
956
|
+
const options={profile:args.profile,method:args.loginMethod,tenant:args.tenant,noBrowser:args.loginNoBrowser,cliVersion:VERSION,force:args.logoutForce,...args.output!==void 0?{output:args.output}:{},...args.query!==void 0?{query:args.query}:{}};const runner=args.command==="login"?runLogin:args.command==="logout"?runLogout:runWhoami;process.exitCode=await runner(options);return}if(args.command==="task-loop"){const{runTaskLoop}=await import("./commands-CA22R7VD.js");process.exitCode=await runTaskLoop(
|
|
862
957
|
{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,charterOp:args.charterOp,charterInput:args.charterFile,charterOutput:args.charterOut,charterRevision:args.charterRevision,
|
|
863
|
-
skillOp:args.skillOp,skillName:args.skillName,skillAll:args.skillAll,skillDir:args.skillDir,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-
|
|
864
|
-
allowedTools,disallowedTools:args.disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-
|
|
958
|
+
skillOp:args.skillOp,skillName:args.skillName,skillAll:args.skillAll,skillDir:args.skillDir,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-RA65DTXP.js");process.exitCode=await runOneShot({prompt:args.prompt??"",fromStdin:args.promptFromStdin,mode:args.mode??"dev",...args.permissionMode!==void 0?{permissionMode:args.permissionMode}:{},allowedTools:args.
|
|
959
|
+
allowedTools,disallowedTools:args.disallowedTools,...args.model!==void 0?{model:args.model}:{},...args.profile!==void 0?{profile:args.profile}:{},version:VERSION});return}const{startTui}=await import("./app-PNDIA4NV.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();
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{
|
|
4
|
-
|
|
3
|
+
import{EngineNotConfiguredError,NoopEngine,UnknownEngineError,aiUnavailableLabel,assertKnownEngine,failureHint,isAiUnavailable,needsHumanToRestoreAi}from"./chunk-ZOOEH7ZE.js";import{ServerSkillCatalog,formatSkillOrigins}from"./chunk-TVODNAPX.js";import"./chunk-YJZT3UD3.js";import{claudeConfigDir,resolveDetectDeps}from"./chunk-T4QZO6RQ.js";import"./chunk-A4LFG7MW.js";import"./chunk-VRBI2NPI.js";import{REQUIRE_ZERO_STATUS,ScheduleApi,collectDue,gateStatus,nowInZone,
|
|
4
|
+
parseCounts,promptSection}from"./chunk-EZGN7PTO.js";import{InstanceLock,buildLockOwner,defaultIsLoopProcess,writeLockOwner}from"./chunk-3WHC4FSG.js";import{LoopSettingsApplier,renderStepBudget}from"./chunk-SA7A5WF2.js";import{resolveProjectRef,uuidProjectIdPolicy}from"./chunk-GMBJTG6A.js";import{AuthSession}from"./chunk-XNLIEUAW.js";import{compareVersionCores,parseVersionCore}from"./chunk-DXXFUNYN.js";import{effectiveApiUrl,resolveProfile}from"./chunk-4VZKNEVN.js";
|
|
5
5
|
import{duplicateTaskKeyDropReason,excludedKeyInArgs,extractPlanJson,parseOpsCount,parsePlanExcludeKeys,placeholderTaskKey,releaseDeployDropReason,stepToItem,zeroTargetDropReasons}from"./chunk-LUQ2KE6Y.js";import{CapacityReporter,buildLoopConfig,describeOperations,evaluateOwnership,formatHookIds,formatHookWiring,localDate,loopStateDir,runHook,runPrefetch,runPreflight}from"./chunk-QVPU4HHG.js";import{killProcessTree}from"./chunk-N2UVRM3Z.js";import{exclusiveInflightEntries,formatExclusiveEntry,
|
|
6
|
-
normalizeSkillName,skillOfItem,spawnSyncResolved}from"./chunk-AEJHDFXB.js";import{AgentLoopApi,describeError,filterByStatus,isPermanent,pick,pickString}from"./chunk-JTJWDV5U.js";import{PRIVATE_PROJECT_REF,isPrivateProjectId,isPrivateProjectRef,privateProjectId,projectFileKey}from"./chunk-GY7KI5E5.js";import{isTaskKey}from"./chunk-II5RVJQN.js";import"./chunk-
|
|
6
|
+
normalizeSkillName,skillOfItem,spawnSyncResolved}from"./chunk-AEJHDFXB.js";import{AgentLoopApi,describeError,filterByStatus,isPermanent,pick,pickString}from"./chunk-JTJWDV5U.js";import{PRIVATE_PROJECT_REF,isPrivateProjectId,isPrivateProjectRef,privateProjectId,projectFileKey}from"./chunk-GY7KI5E5.js";import{isTaskKey}from"./chunk-II5RVJQN.js";import"./chunk-VFPY2A23.js";import{joinFor}from"./chunk-PMOUHEJQ.js";import{httpFetch}from"./chunk-J7QYPKVK.js";import"./chunk-5WGOHFAS.js";
|
|
7
7
|
import{twpHomeDir}from"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs10 from"fs";import path8 from"path";import fs from"fs";import path from"path";var LoopLogger=class{constructor(runnerId,logFile,out=process.stdout,now=()=>new Date){this.runnerId=runnerId;this.out=out;this.now=now;if(logFile){fs.mkdirSync(path.dirname(logFile),{recursive:true});this.stream=fs.createWriteStream(logFile,{flags:"a"})}}runnerId;out;now;stream=null;log(message){const d=this.now();const ts=`${d.getFullYear()}-${pad(d.getMonth()+1)}-${pad(d.getDate())} ${pad(d.getHours())}:${pad(d.getMinutes())}:${pad(d.getSeconds())}`;const line=`[${ts}] [${this.runnerId}] ${stripTerminalControls(
|
|
8
8
|
message)}
|
|
9
9
|
`;this.out.write(line);this.stream?.write(line)}separator(){this.log("=".repeat(60))}close(){this.stream?.end();this.stream=null}};function pad(n){return String(n).padStart(2,"0")}function rotateLogs(dir,retentionDays,now=Date.now()){if(retentionDays<=0)return;const cutoff=now-retentionDays*864e5;let entries;try{entries=fs.readdirSync(dir)}catch{return}for(const name of entries){if(!/^(agent-loop|task-loop|step|plan|schedule-enqueued)-.*\.(log|txt)$/.test(name))continue;const file=path.join(dir,
|
|
@@ -316,16 +316,16 @@ const startedAtMs=now();let warned="";let done=false;const check=()=>{if(done)re
|
|
|
316
316
|
decision.key)return;warned=decision.key;handlers.onWarn(decision.reason);return}done=true;const recorded=writeRestartAttempt(opts.stateDir,opts.projectKey,{from:decision.from,to:decision.to,at:new Date(now()).toISOString()},opts.store);if(!recorded){handlers.onWarn(`\u518D\u8D77\u52D5\u8A18\u9332\u3092\u66F8\u3051\u307E\u305B\u3093\u3067\u3057\u305F\uFF08${restartAttemptPath(opts.stateDir,opts.projectKey)}\uFF09\u3002\u540C\u3058\u7248\u30C9\u30EA\u30D5\u30C8\u304C\u89E3\u6D88\u3057\u306A\u3044\u5834\u5408\u3001\u518D\u8D77\u52D5\u3092\u7E70\u308A\u8FD4\u3059\u9632\u6CE2\u5824\u304C\u52B9\u304D\u307E\u305B\u3093`)}
|
|
317
317
|
handlers.onRestart({from:decision.from,to:decision.to})};const timer=setInterval(check,opts.intervalMs??DRIFT_POLL_MS);timer.unref?.();return{stop:()=>{done=true;clearInterval(timer)},check}}import fs9 from"fs";import path7 from"path";var POLL_MS=1e3;var MAX_STOP_BYTES=4096;var MAX_AT_LENGTH=64;function markerPath(lockDir2,kind){return path7.join(lockDir2,kind)}function requestMarker(lockDir2,kind,pid,deps={}){const target=markerPath(lockDir2,kind);const write=deps.writeFileSync??((p,d)=>fs9.writeFileSync(p,d,{flag:"wx",mode:384}));const now=deps.now??(()=>new Date);clearMarker(lockDir2,kind,deps);try{write(target,`${JSON.stringify({pid,at:now().toISOString()})}
|
|
318
318
|
`);return{ok:true}}catch(err){const e=err;return{ok:false,reason:e.code??"UNKNOWN"}}}function readMarker(lockDir2,kind,deps={}){const target=markerPath(lockDir2,kind);const read=deps.readFileSync??(p=>fs9.readFileSync(p,"utf8"));const size=deps.statSize??(p=>fs9.statSync(p).size);let raw;try{if(size(target)>MAX_STOP_BYTES)return null;raw=read(target)}catch{return null}if(raw.length>MAX_STOP_BYTES)return null;try{const parsed=JSON.parse(raw);if(typeof parsed!=="object"||parsed===null)return null;const pid=parsed.pid;const at=parsed.at;if(typeof pid!=="number"||!Number.isInteger(pid)||
|
|
319
|
-
pid<=0)return null;return{pid,at:sanitizeAt(at)}}catch{return null}}function sanitizeAt(at){if(typeof at!=="string")return"";return at.replace(/[\u0000-\u001f\u007f]/g," ").slice(0,MAX_AT_LENGTH)}function clearMarker(lockDir2,kind,deps={}){const rm=deps.rmSync??(p=>fs9.rmSync(p,{recursive:true,force:true}));try{rm(markerPath(lockDir2,kind))}catch{}}function watchMarker(lockDir2,kind,selfPid,onStop,deps={}){let fired=false;const timer=setInterval(()=>{if(fired)return;const req=readMarker(lockDir2,kind,deps);if(req===null||req.pid!==selfPid)return;fired=true;onStop(req)},deps.intervalMs??POLL_MS);timer.unref?.();return()=>{fired=true;clearInterval(timer)}}function safe(s){return stripTerminalControls(s)}function compactTimestamp(at=new Date){const p2=n=>String(n).padStart(2,"0");return`${at.getFullYear()}${p2(at.getMonth()+1)}${p2(at.getDate())}-${p2(at.getHours())}${p2(at.getMinutes())}${p2(at.getSeconds())}`}async function buildEngine(config,log){if(config.engine==="noop")return new NoopEngine;const{DispatchEngine}=await import("./ai-dispatch-
|
|
319
|
+
pid<=0)return null;return{pid,at:sanitizeAt(at)}}catch{return null}}function sanitizeAt(at){if(typeof at!=="string")return"";return at.replace(/[\u0000-\u001f\u007f]/g," ").slice(0,MAX_AT_LENGTH)}function clearMarker(lockDir2,kind,deps={}){const rm=deps.rmSync??(p=>fs9.rmSync(p,{recursive:true,force:true}));try{rm(markerPath(lockDir2,kind))}catch{}}function watchMarker(lockDir2,kind,selfPid,onStop,deps={}){let fired=false;const timer=setInterval(()=>{if(fired)return;const req=readMarker(lockDir2,kind,deps);if(req===null||req.pid!==selfPid)return;fired=true;onStop(req)},deps.intervalMs??POLL_MS);timer.unref?.();return()=>{fired=true;clearInterval(timer)}}function safe(s){return stripTerminalControls(s)}function compactTimestamp(at=new Date){const p2=n=>String(n).padStart(2,"0");return`${at.getFullYear()}${p2(at.getMonth()+1)}${p2(at.getDate())}-${p2(at.getHours())}${p2(at.getMinutes())}${p2(at.getSeconds())}`}async function buildEngine(config,log){if(config.engine==="noop")return new NoopEngine;const{DispatchEngine}=await import("./ai-dispatch-2FL2AFL7.js");const{DEFAULT_PREFLIGHT_HOSTS}=await import("./ai-dispatch-2FL2AFL7.js");const extraHosts=config.
|
|
320
320
|
operations.preflightHosts;return new DispatchEngine(config.ai,log,{workspace:config.workspace,charterFile:config.charterFile??void 0,charterEnabled:config.charterEnabled,...config.charterPrefix===null?{}:{charterPrefix:config.charterPrefix},...config.charterSuffix===null?{}:{charterSuffix:config.charterSuffix},serverPrompts:()=>config.serverPrompts??{},compileCommand:config.compileCommand??void 0,skillOverlayDir:path8.join(config.stateDir,"skill-overlay",projectFileKey(config.projectId)),launcherBin:config.
|
|
321
321
|
claudeLauncher.bin,...extraHosts.length>0?{preflightHosts:[...DEFAULT_PREFLIGHT_HOSTS,...extraHosts]}:{}})}function lockDir(config){return path8.join(config.stateDir,`task-loop-${projectFileKey(config.projectId)}.lock.d`)}async function runTaskLoop(opts){if(opts.action==="stop")return await stopLoop(opts);const profile=resolveProfile(opts.profile);let creds;try{creds=new AuthSession(profile.name,profile.apiUrl).loadOrThrow()}catch(err){process.stderr.write(`${err.message}
|
|
322
322
|
`);return 1}const apiUrl=effectiveApiUrl(profile,creds.api_url);const session=new AuthSession(profile.name,apiUrl);const projectRef=opts.project??process.env.TWP_PROJECT??"";if(projectRef===""){process.stderr.write("--project <\u30AD\u30FC|UUID> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF08TWP_PROJECT \u3067\u3082\u53EF\uFF09\n");return 2}const projectApi=new ProjectApi(apiUrl,session);let project;try{project=await projectApi.resolve(projectRef)}catch(err){process.stderr.write(`${err.
|
|
323
323
|
message}
|
|
324
324
|
`);return 1}const projectId=project.id;if(opts.action==="setup"){const{runSetup,parseAiList}=await import("./setup-JGGFVRUW.js");let ais;if(opts.ais!==void 0&&opts.ais.length>0){const parsed=parseAiList(opts.ais.join(","));if(parsed.unknown.length>0){process.stderr.write(`--ai \u306B\u672A\u77E5\u306E\u5024\u304C\u3042\u308A\u307E\u3059: ${parsed.unknown.join(" / ")}
|
|
325
325
|
`);return 2}ais=parsed.ais}return runSetup({projectId,projectRef,projectName:project.name===project.id?projectRef:`${project.code} / ${project.name}`,apiUrl,yes:opts.yes===true,...ais!==void 0?{ais}:{},...opts.workspace!==void 0?{workspace:opts.workspace}:{},...opts.aiConfigFile!==void 0?{aiConfigFile:opts.aiConfigFile}:{},...opts.noAiConfigFile===true?{noAiConfigFile:true}:{},...opts.profile!==void 0?{profile:opts.profile}:{}})}if(opts.action==="charter"){if(opts.charterOp===void 0){process.stderr.
|
|
326
|
-
write("charter \u306B\u306F push \u304B pull \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\n");return 2}if(isPrivateProjectId(projectId)){process.stderr.write("\u500B\u4EBA\u30BF\u30B9\u30AF\u306E\u30AD\u30E5\u30FC\uFF08--project __private__\uFF09\u306B\u306F\u61B2\u7AE0\u306E\u8A2D\u5B9A\u304C\u3042\u308A\u307E\u305B\u3093\n");return 2}const{runCharterCommand}=await import("./charter-command-
|
|
326
|
+
write("charter \u306B\u306F push \u304B pull \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\n");return 2}if(isPrivateProjectId(projectId)){process.stderr.write("\u500B\u4EBA\u30BF\u30B9\u30AF\u306E\u30AD\u30E5\u30FC\uFF08--project __private__\uFF09\u306B\u306F\u61B2\u7AE0\u306E\u8A2D\u5B9A\u304C\u3042\u308A\u307E\u305B\u3093\n");return 2}const{runCharterCommand}=await import("./charter-command-LIX2JXRJ.js");return runCharterCommand({api:new AgentLoopApi({apiUrl,projectId,session})},{op:opts.
|
|
327
327
|
charterOp,file:opts.charterInput,out:opts.charterOutput,revision:opts.charterRevision,yes:opts.yes===true,projectRef,profile:opts.profile})}if(opts.action==="skill"){if(opts.skillOp===void 0){process.stderr.write("skill \u306B\u306F push \u304B pull \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\n");return 2}if(isPrivateProjectId(projectId)){process.stderr.write("\u500B\u4EBA\u30BF\u30B9\u30AF\u306E\u30AD\u30E5\u30FC\uFF08--project __private__\uFF09\u306B\u306F\u30B9\u30AD\u30EB\u5B9A\u7FA9\u306E\u8A2D\u5B9A\u304C\u3042\u308A\u307E\u305B\u3093\n");
|
|
328
|
-
return 2}const{runSkillCommand}=await import("./skill-command-
|
|
328
|
+
return 2}const{runSkillCommand}=await import("./skill-command-NXHTJXYY.js");return runSkillCommand({api:new AgentLoopApi({apiUrl,projectId,session})},{op:opts.skillOp,name:opts.skillName,all:opts.skillAll===true,dir:opts.skillDir,revision:opts.charterRevision,yes:opts.yes===true,projectRef,profile:opts.profile})}const config=buildLoopConfig({projectId,projectRef,apiUrl,safeMode:opts.safe,daemon:opts.daemon,...opts.maxCycles!==void 0?{maxCycles:opts.maxCycles}:{},...opts.interval!==void 0?{intervalSec:opts.
|
|
329
329
|
interval}:{},forceRunner:opts.forceRunner,...opts.engine!==void 0?{engine:opts.engine}:{},version:opts.version});const api=new AgentLoopApi({apiUrl,projectId,session});if(opts.action==="status"||opts.action==="schedule"){for(const warning of config.warnings)process.stderr.write(`\u26A0\uFE0F ${warning}
|
|
330
330
|
`)}if(opts.action==="status")return showStatus(api,config);if(opts.action==="schedule"){const{runScheduleCommand}=await import("./schedule-command-QCGEMBVR.js");return runScheduleCommand({api,projectApi,config},{now:opts.scheduleNow,counts:opts.scheduleCounts,gate:opts.scheduleGate,verbose:opts.verbose===true})}if(config.engine===""){process.stderr.write(`${new EngineNotConfiguredError().message}
|
|
331
331
|
`);return 2}try{assertKnownEngine(config.engine)}catch(err){if(err instanceof UnknownEngineError){process.stderr.write(`${err.message}
|
|
@@ -343,7 +343,7 @@ once("SIGINT",onSignal);process.once("SIGTERM",onSignal);process.once("SIGHUP",o
|
|
|
343
343
|
req=>{drainWatcher?.();if(loop===null){pendingDrain.value={reason:`stop --drain\u30FB${req.at||"\u6642\u523B\u4E0D\u660E"}`,exitCode:0};log.log(`\u30C9\u30EC\u30A4\u30F3\u8981\u6C42\u3092\u53D7\u3051\u53D6\u308A\u307E\u3057\u305F\uFF08${req.at||"\u6642\u523B\u4E0D\u660E"}\uFF09\u3002\u8D77\u52D5\u51E6\u7406\u306E\u5B8C\u4E86\u5F8C\u306B\u53CD\u6620\u3057\u307E\u3059\u3002`);return}loop.requestDrain(`stop --drain\u30FB${req.at||"\u6642\u523B\u4E0D\u660E"}`)});if(installed!==null){const watch=watchVersionDrift(
|
|
344
344
|
{runningVersion:opts.version,stateDir:config.stateDir,projectKey:projectFileKey(config.projectId),supervised:autoRestart.supervised,disabled:autoRestart.disabled},{onWarn:reason=>log.log(`\u26A0\uFE0F ${reason}`),onRestart:({from,to})=>{driftWatcher?.();log.log(`\u7248\u30C9\u30EA\u30D5\u30C8\u3092\u691C\u51FA\u3057\u307E\u3057\u305F\uFF08${from} \u2192 ${to}\uFF09\u3002`);log.log(` \u5B9F\u884C\u4E2D\u306E\u30A2\u30A4\u30C6\u30E0\u3092\u5B8C\u8D70\u3055\u305B\u3066\u304B\u3089\u7D42\u4E86\u3057\u307E\u3059\uFF08\u7D42\u4E86\u30B3\u30FC\u30C9 ${EXIT_VERSION_DRIFT}\
|
|
345
345
|
\uFF09\u3002\u518D\u8D77\u52D5\u306F systemd\uFF08Restart=always\uFF09\u304C\u884C\u3044\u307E\u3059`);const reason=`\u7248\u30C9\u30EA\u30D5\u30C8 ${from} \u2192 ${to} \u306B\u3088\u308B\u81EA\u52D5\u518D\u8D77\u52D5`;if(loop===null)pendingDrain.value={reason,exitCode:EXIT_VERSION_DRIFT};else loop.requestDrain(reason,EXIT_VERSION_DRIFT)}});driftWatcher=watch.stop}try{const{LoopSettingsApplier:LoopSettingsApplier2}=await import("./server-settings-TUBJ4P57.js");const settings=new LoopSettingsApplier2(
|
|
346
|
-
{api,config,log:m=>log.log(m)});await settings.apply();const{ServerSkillCatalog:ServerSkillCatalog2}=await import("./server-skills-
|
|
346
|
+
{api,config,log:m=>log.log(m)});await settings.apply();const{ServerSkillCatalog:ServerSkillCatalog2}=await import("./server-skills-IXIOOOC2.js");const skills=new ServerSkillCatalog2({api,config,log:m=>log.log(m)});await skills.refresh();await runner.checkHeartbeatInterval();await runner.registerOrThrow();runner.startHeartbeatWorker();log.log(` heartbeat: ${config.heartbeatIntervalSec}\u79D2\u3054\u3068\u306B\u9001\u4FE1${runner.heartbeatTimeoutServer?`\uFF08\u30B5\u30FC\u30D0\u306E\u6B7B\u6D3B\u3057\u304D\u3044\u5024 ${runner.
|
|
347
347
|
heartbeatTimeoutServer}\u79D2\uFF09`:""}`);loop=new TaskLoop({api,projectApi,config,log,runner,engine:await buildEngine(config,m=>log.log(m)),settings,skills});if(pendingDrain.value!==null){loop.requestDrain(pendingDrain.value.reason,pendingDrain.value.exitCode)}exitCode=await loop.run()}catch(err){if(err instanceof RunnerRegistrationError){exitCode=1}else{log.log(`\u26D4 \u4E88\u671F\u3057\u306A\u3044\u30A8\u30E9\u30FC\u3067\u7D42\u4E86\u3057\u307E\u3059: ${err.message}`);exitCode=1}}finally{await shutdown()}
|
|
348
348
|
return exitCode}async function showStatus(api,config){const out={write:text=>process.stdout.write(stripTerminalControls(text))};out.write(`\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8: ${config.projectRef}\uFF08${config.projectId}\uFF09
|
|
349
349
|
`);out.write(`\u63A5\u7D9A\u5148: ${config.apiUrl}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{PromptAbortedError,promptHidden,promptText}from"./chunk-L37NS5L2.js";import{ApiError,TwpApiClient,errorListMessages}from"./chunk-IF2K4PM5.js";import{AuthSession,NotLoggedInError,SessionExpiredError,deleteCredentials,loadCredentials,maskToken,saveCredentials}from"./chunk-XNLIEUAW.js";import{effectiveApiUrl,resolveProfile}from"./chunk-4VZKNEVN.js";import{system32}from"./chunk-N2UVRM3Z.js";import{EXIT_USAGE,UsageError}from"./chunk-
|
|
3
|
+
import{PromptAbortedError,promptHidden,promptText}from"./chunk-L37NS5L2.js";import{ApiError,TwpApiClient,errorListMessages}from"./chunk-IF2K4PM5.js";import{AuthSession,NotLoggedInError,SessionExpiredError,deleteCredentials,loadCredentials,maskToken,saveCredentials}from"./chunk-XNLIEUAW.js";import{effectiveApiUrl,resolveProfile}from"./chunk-4VZKNEVN.js";import{system32}from"./chunk-N2UVRM3Z.js";import{EXIT_USAGE,UsageError}from"./chunk-VFPY2A23.js";import{isWindowsDriveAbsolute}from"./chunk-PMOUHEJQ.js";
|
|
4
4
|
import{httpFetch}from"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import os from"os";import{createHash,randomBytes}from"crypto";function generatePkcePair(){const verifier=randomBytes(32).toString("base64url");return{verifier,challenge:computeChallenge(verifier),method:"S256"}}function computeChallenge(verifier){return createHash("sha256").update(verifier,"ascii").digest("base64url")}function generateState(){return randomBytes(16).toString("base64url")}import http from"http";import crypto from"crypto";function safeEqual(a,b){const x=Buffer.from(a,"utf8");const y=Buffer.from(b,"utf8");const len=Math.max(x.length,y.length,1);const px=Buffer.alloc(len);const py=Buffer.alloc(len);x.copy(px);y.copy(py);return crypto.timingSafeEqual(px,py)&&x.length===y.length}var LoginTimeoutError=class extends Error{constructor(timeoutMs){super(`\u30D6\u30E9\u30A6\u30B6\u3067\u306E\u627F\u8A8D\u3092 ${Math.round(timeoutMs/1e3)} \u79D2\u5F85\u3061\u307E\u3057\u305F\u304C\u5B8C\u4E86\u3057\u307E\u305B\u3093\u3067\u3057\u305F\u3002twp login \u3092\u3084\u308A\u76F4\u3057\u3066\u304F\u3060\u3055\
|
|
5
5
|
\u3044\u3002`)}};var SUCCESS_HTML=`<!doctype html><html lang="ja"><head><meta charset="utf-8"><title>TWP CLI \u30ED\u30B0\u30A4\u30F3\u5B8C\u4E86</title></head>
|
|
6
6
|
<body style="font-family: sans-serif; text-align: center; padding-top: 4rem; background:#f7f9fc; color:#1b2559">
|
|
@@ -55,7 +55,7 @@ ation/json",Authorization:`Bearer ${creds.token}`}}).then(res=>res.ok,()=>false)
|
|
|
55
55
|
`);if(!revoked){writeOut("\u26A0 \u30B5\u30FC\u30D0\u5074\u306E\u30C8\u30FC\u30AF\u30F3\u5931\u52B9\u306B\u5931\u6557\u3057\u307E\u3057\u305F\uFF08\u30AA\u30D5\u30E9\u30A4\u30F3\u7B49\uFF09\u3002TWP \u306E\u300C\u8A2D\u5B9A > CLI\u7AEF\u672B\u300D\u304B\u3089\u3082\u5931\u52B9\u3067\u304D\u307E\u3059\u3002\n")}})}async function runWhoami(options){return run(async()=>{const profile=resolveProfile(options.profile);const structured=options.output!==void 0||options.query!==void 0;let format=null;if(structured){
|
|
56
56
|
const{resolveOutputFormat,OUTPUT_FORMATS}=await import("./format-NMW6Y2E5.js");format=resolveOutputFormat({...options.output!==void 0?{flag:options.output}:{},isTty:process.stdout.isTTY===true});if(format===null){throw new UsageError(`--output \u306B\u300C${options.output??""}\u300D\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093`,`\u6307\u5B9A\u3067\u304D\u308B\u306E\u306F ${OUTPUT_FORMATS.join(" / ")} \u3067\u3059`)}}const stored=loadCredentials(profile.name);const apiUrl=effectiveApiUrl(
|
|
57
57
|
profile,stored?.api_url);const session=new AuthSession(profile.name,apiUrl);const client=new TwpApiClient(apiUrl,session,httpFetch,options.cliVersion);const me=await client.get("/api/v2/user");const user=me.user;const creds=loadCredentials(profile.name);if(format!==null){const value={id:user?.id??null,name:user?.name??null,email:user?.email??null,tenant_code:user?.tenant_code??null,role:user?.role??null,is_admin:user?.is_admin??null,profile:profile.name,api_url:apiUrl,expires_at:creds?.token_expires_at??
|
|
58
|
-
null};const{evaluateQuery}=await import("./query-
|
|
58
|
+
null};const{evaluateQuery}=await import("./query-XEOVFI4D.js");const{renderOutput}=await import("./render-R5QZ46GF.js");const selected=options.query===void 0?value:await evaluateQuery(options.query,value);const text=renderOutput(selected,format);process.stdout.write(text.endsWith("\n")?text:`${text}
|
|
59
59
|
`);return}writeOut(`\u30E6\u30FC\u30B6\u30FC: ${user?.name??"?"}\uFF08${user?.email??"?"}\uFF09
|
|
60
60
|
`);writeOut(`ID: ${user?.id??"?"}
|
|
61
61
|
`);writeOut(`\u30C6\u30CA\u30F3\u30C8: ${user?.tenant_code??"?"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{customerDocumentSubresources}from"./chunk-
|
|
4
|
-
|
|
5
|
-
PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,envelopePaging,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes,positiveInteger}from"./chunk-
|
|
3
|
+
import{customerDocumentSubresources}from"./chunk-DQCHLRSB.js";import{COMPANY_FIELDS,COMPANY_LICENSE,CUSTOMER_LICENSE,customerSubresources,customerWriteOperations,dataOf,levelForbidden}from"./chunk-IRHKFHJZ.js";import"./chunk-4S7SNE2M.js";import{createFlags,fieldBody,hasAnyField,updateFlags}from"./chunk-NK53AFVE.js";import"./chunk-QLENN5DD.js";import{featureLicenseGuidance,licenseForbidden}from"./chunk-CF3ZZKCZ.js";import"./chunk-OTIR4GES.js";import{CUSTOMERS_PATH,
|
|
4
|
+
SALES_COMPANIES_PATH,isExactNumericId}from"./chunk-Q2KIETMB.js";import{isSafePathSegment}from"./chunk-GMBJTG6A.js";import"./chunk-QBGEYQ2I.js";import{repeatedValues}from"./chunk-7UB4I3JF.js";import{ApiError}from"./chunk-IF2K4PM5.js";import"./chunk-V64CGX7V.js";import"./chunk-XNLIEUAW.js";import"./chunk-4VZKNEVN.js";import"./chunk-QQRJLH6B.js";import"./chunk-GY7KI5E5.js";import"./chunk-II5RVJQN.js";import{LIST_FLAGS,LIST_PAGING_HELP,
|
|
5
|
+
PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,envelopePaging,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes,positiveInteger}from"./chunk-MI6HVYR2.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";
|
|
6
|
+
import"./chunk-VSJBJXZO.js";var CUSTOMER_FLAG_FIELD={kind:"boolean",flag:"--customer",key:"customer_flg",summary:"\u9867\u5BA2\u3068\u3057\u3066\u6271\u3046\u304B\uFF08true / false\uFF09"};var FIELDS=[...COMPANY_FIELDS,CUSTOMER_FLAG_FIELD];var COLUMNS=["id","company_name","company_name_kana","company_short_name","customer_flg","supplier_flg","tel","address1"];var WRITE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u53D6\u5F15\u5148\u306E\u4F5C\u6210\u30FB\u66F4\u65B0\u306B\u306F\u3001\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u30E1\u30F3\u30D0\u30FC\u300D\u4EE5\u4E0A\u304B\u3001\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7DE8\u96C6\u8005\u300D\u4EE5\u4E0A\u306E\u3069\u3061\u3089\u304B\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");
|
|
6
7
|
var DELETE_FORBIDDEN=levelForbidden(COMPANY_LICENSE,"\u53D6\u5F15\u5148\u306E\u524A\u9664\u306B\u306F\u3001\u8CA9\u58F2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u30E1\u30F3\u30D0\u30FC\u300D\u4EE5\u4E0A\u304B\u3001\u9867\u5BA2\u7BA1\u7406\u306E\u6A29\u9650\u304C\u300C\u7BA1\u7406\u8005\u300D\u306E\u3069\u3061\u3089\u304B\u304C\u8981\u308A\u307E\u3059\u3002\u30C6\u30CA\u30F3\u30C8\u7BA1\u7406\u8005\u306B\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002");var REF_HELP="<\u53D6\u5F15\u5148> \u306F\u4F01\u696D\u540D\u30FB\u7565\u79F0\u30FB\u30AB\u30CA\u306E\u5B8C\u5168\u4E00\u81F4\u304B\
|
|
7
8
|
ID\uFF08twp company list \u306E id \u5217\u306E\u6570\u5B57\uFF09\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u3069\u3061\u3089\u3082\u6307\u5B9A\u3067\u304D\u307E\u3059\u3002";function companyPath(input){const id=requireResolved(input,"companyId");if(!isExactNumericId(id))throw new UsageError(`\u53D6\u5F15\u5148 ID \u3092\u30D1\u30B9\u306B\u4F7F\u3048\u307E\u305B\u3093: ${id}`);return`${SALES_COMPANIES_PATH}/${id}`}async function resolveCompany(input,ctx,usage){
|
|
8
9
|
const raw=singleRef(input,{flag:"<\u53D6\u5F15\u5148>",label:"\u53D6\u5F15\u5148",usage});return withResolved(input,{companyId:(await ctx.resolver.company(raw,{flag:"<\u53D6\u5F15\u5148>",source:"sales",mustExist:true})).id})}var createOperation={name:"create",summary:"\u53D6\u5F15\u5148\u4F01\u696D\u3092\u767B\u9332\u3059\u308B\uFF08\u9867\u5BA2\u30FB\u4ED5\u5165\u5148\u306E\u3069\u3061\u3089\u304B\u4E00\u65B9\u4EE5\u4E0A\uFF09",usage:"twp company create --name <\u4F01\u696D\u540D> (--customer true | --suppli\
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{BUILTIN_COMMANDS,GLOBAL_FLAGS,TASK_LOOP_ACTIONS,VALUE_FLAGS}from"./chunk-
|
|
3
|
+
import{BUILTIN_COMMANDS,GLOBAL_FLAGS,TASK_LOOP_ACTIONS,VALUE_FLAGS}from"./chunk-FMJUPLDG.js";import"./chunk-NAUH75MM.js";import{API_TOKEN,DOMAIN_NAMES,HELP_TOKEN,isDomainName}from"./chunk-ZGHEF45T.js";import"./chunk-QQRJLH6B.js";import{OUTPUT_FORMATS}from"./chunk-K2ONOH3L.js";import"./chunk-WVS4W5FY.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var EXTRA_TOP_LEVEL=[API_TOKEN,HELP_TOKEN,"completion","configure"];var COMPLETION_SHELLS=["bash","zsh","fish","powershell"];var TOP_LEVEL_FLAGS=["--help","--version","-p","--print","--profile","--mode","--permission-mode","--model","--allowed-tools","--disallowed-tools","--no-tui","--doctor"];var DOMAIN_GLOBAL_FLAGS=[...GLOBAL_FLAGS].filter(flag=>flag.startsWith("--"));function staticValues(flag,ctx){if(flag==="--output")return OUTPUT_FORMATS;if(flag==="--profile")return ctx.profileNames();return void 0}
|
|
4
4
|
function positionals(words,takesValue){const out=[];for(let i=0;i<words.length;i++){const word=words[i]??"";if(word==="--"){out.push(...words.slice(i+1));break}if(word.startsWith("-")){if(!word.includes("=")&&takesValue(word))i++;continue}out.push(word)}return out}function byPrefix(candidates,current){const seen=new Set;for(const candidate of candidates){if(candidate.startsWith(current))seen.add(candidate)}return[...seen]}function remainingFlags(flags,words){const used=new Set(words.filter(w=>w.
|
|
5
5
|
startsWith("--")).map(w=>w.split("=")[0]));return[...flags.filter(f=>f.repeatable===true||!used.has(f.name)).map(f=>f.name),...DOMAIN_GLOBAL_FLAGS.filter(f=>!used.has(f))]}async function complete(words,current,ctx){const previous=words[words.length-1];if(previous!==void 0&&previous.startsWith("--")&&!previous.includes("=")){const values=staticValues(previous,ctx);if(values!==void 0)return byPrefix(values,current)}const eq=current.indexOf("=");if(current.startsWith("--")&&eq>0){const flag=current.
|
|
6
6
|
slice(0,eq);const values=staticValues(flag,ctx);return values===void 0?[]:byPrefix(values.map(v=>`${flag}=${v}`),current)}const pos=positionals(words,flag=>VALUE_FLAGS.has(flag));const[first,second]=pos;if(first===void 0){if(current.startsWith("-"))return byPrefix([...TOP_LEVEL_FLAGS,...DOMAIN_GLOBAL_FLAGS],current);return byPrefix([...BUILTIN_COMMANDS,...DOMAIN_NAMES,...EXTRA_TOP_LEVEL],current)}if(first==="completion")return pos.length===1?byPrefix(COMPLETION_SHELLS,current):[];if(first==="con\
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{contractAiReviewResources}from"./chunk-
|
|
4
|
-
import"./chunk-XNLIEUAW.js";import"./chunk-4VZKNEVN.js";import"./chunk-QQRJLH6B.js";import"./chunk-II5RVJQN.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-
|
|
3
|
+
import{contractAiReviewResources}from"./chunk-ZY6LEKWR.js";import"./chunk-FANDYQCM.js";import{featureLicenseGuidance,licenseForbidden}from"./chunk-CF3ZZKCZ.js";import{isoDate}from"./chunk-OTIR4GES.js";import{readBody}from"./chunk-6LSQCOCJ.js";import{SALES_CONTRACTS_PATH,isExactNumericId,resolveNamed}from"./chunk-Q2KIETMB.js";import"./chunk-GMBJTG6A.js";import"./chunk-QBGEYQ2I.js";import{repeatedValues}from"./chunk-7UB4I3JF.js";import"./chunk-IF2K4PM5.js";
|
|
4
|
+
import"./chunk-XNLIEUAW.js";import"./chunk-4VZKNEVN.js";import"./chunk-QQRJLH6B.js";import"./chunk-II5RVJQN.js";import{LIST_PAGING_HELP,PAGE_NUMBER_LIST_FLAGS,PAGE_NUMBER_PAGING_HELP,STABLE_PAGE_ORDER,nonEmpty,pageNumberPaging,pageNumberQuery,pageRangeNotes}from"./chunk-MI6HVYR2.js";import{requireResolved,withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";
|
|
5
5
|
import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var PATH=SALES_CONTRACTS_PATH;var SALES_FORBIDDEN=licenseForbidden(featureLicenseGuidance("\u8CA9\u58F2\u7BA1\u7406"));var DISAMBIGUATION="\u53D6\u5F15\u5951\u7D04\u306F\u898B\u7A4D\u304B\u3089\u4F5C\u308B\u8CA9\u58F2\u7BA1\u7406\u306E\u66F8\u985E\u3067\u3059\uFF08\u660E\u7D30\u30FB\u91D1\u984D\u3092\u6301\u3061\u3001\u627F\u8A8D\u30EF\u30FC\u30AF\u30D5\u30ED\u30FC\u306B\u4E57\u308A\u307E\u3059\uFF09\u3002\n\u9867\u5BA2\u306B\u7D10\u3065\u3051\u3066\u4FDD\u7BA1\u3059\u308B\u5951\u7D04\u66F8\u306E PDF \u306F\u5225\u7269\u3067\u3001twp customer contract \u3067\u6271\u3044\u307E\u3059\u3002\n\n";
|
|
6
6
|
var CONTRACT_STATUSES={new:"\u4F5C\u6210\u4E2D",create_completed:"\u4F5C\u6210\u5B8C\u4E86",in_progress:"\u7533\u8ACB\u4E2D",approved:"\u627F\u8A8D\u6E08",rejected:"\u5DEE\u3057\u623B\u3057",submitted:"\u63D0\u793A\u6E08",contracted:"\u5951\u7D04\u7DE0\u7D50\u6E08",deleted:"\u524A\u9664\u6E08"};var RENEWAL_TYPES={auto_renewal:"\u81EA\u52D5\u66F4\u65B0",application_renewal:"\u7533\u8FBC\u306B\u3088\u308B\u66F4\u65B0"};function statusName(code){return CONTRACT_STATUSES[code]??code}function tableHelp(table){
|
|
7
7
|
return Object.entries(table).map(([code,name])=>`${code}\uFF08${name}\uFF09`).join(" / ")}var STORE_KEYS=["estimate_id","contract_no","title","status","contract_date","start_date","end_date","renewal_type","cancellation_notice_days","next_renewal_date","memo","manage_form_data","contract_document_file_ids","details","recipients"];var CREATE_ONLY_KEYS=["estimate_id"];var UPDATE_KEYS=STORE_KEYS.filter(key=>!CREATE_ONLY_KEYS.includes(key));var DETAIL_KEYS=["item_name","description","quantity","unit",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{cacheNote,createFlags,fieldBody,hasAnyField,idSegment,masterFields,masterItem,masterListOperation,masterRows,referencedDeleteGuidance,resolveRefFields,targetId,updateFlags}from"./chunk-
|
|
4
|
-
import{withResolved}from"./chunk-
|
|
3
|
+
import{cacheNote,createFlags,fieldBody,hasAnyField,idSegment,masterFields,masterItem,masterListOperation,masterRows,referencedDeleteGuidance,resolveRefFields,targetId,updateFlags}from"./chunk-NK53AFVE.js";import"./chunk-OTIR4GES.js";import{DEPARTMENTS_PATH}from"./chunk-Q2KIETMB.js";import"./chunk-GMBJTG6A.js";import"./chunk-QBGEYQ2I.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";import"./chunk-II5RVJQN.js";import"./chunk-MI6HVYR2.js";
|
|
4
|
+
import{withResolved}from"./chunk-PS5QFKHB.js";import{acknowledgement,isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LABEL="\u90E8\u7F72";var LIST_COLUMNS=["id","code","name","parent_id","level","effective_status","valid_from","valid_to","member_count"];var GET_COLUMNS=["id","code","name","name_short","parent_id","level","sort","effective_status","valid_from","valid_to","description"];var TREE_COLUMNS=["depth","name","code","id","effective_status","valid_to"];var MEMBER_COLUMNS=["id","user_id","position_id","job_title_id","start_date","end_date","is_primary","is_current","effective_status"];var REF_FLAG={name:"\
|
|
5
5
|
--department",summary:"\u5BFE\u8C61\u306E\u90E8\u7F72\uFF08\u4F4D\u7F6E\u5F15\u6570\u306E\u4EE3\u308F\u308A\u306B\u4F7F\u3048\u308B\uFF09",takesValue:true,placeholder:"<\u90E8\u7F72>"};var REF_HELP="<\u90E8\u7F72> \u306F\u540D\u524D\u30FB\u30B3\u30FC\u30C9\u30FBID \u306E\u3069\u308C\u3067\u3082\u6307\u5B9A\u3067\u304D\u307E\u3059\uFF08\u540D\u524D\u304C\u8907\u6570\u306B\u4E00\u81F4\u3059\u308C\u3070\u5019\u88DC\u3092\u51FA\u3057\u3066\u6B62\u307E\u308A\u307E\u3059\uFF09\u3002\nID \u4EE5\u5916\u306F\u90E8\u7F72\u4E00\u89A7\uFF08\u65E2\u5B9A10\u5206\u30AD\u30E3\u30C3\u30B7\u30E5\u30FB--refresh \u3067\u53D6\u308A\u76F4\u3057\uFF09\u3068\u7167\u5408\u3057\u307E\u3059\u3002";
|
|
6
6
|
var FIELDS=masterFields(LABEL,[{kind:"text",flag:"--name-short",key:"name_short",label:"\u7565\u79F0",maxChars:50,summary:"\u7565\u79F0"},{kind:"ref",flag:"--parent",key:"parent_id",summary:"\u89AA\u90E8\u7F72\uFF08\u540D\u524D\u30FB\u30B3\u30FC\u30C9\u30FBID\uFF09",placeholder:"<\u90E8\u7F72>",clearFlag:"--no-parent",clearSummary:"\u89AA\u90E8\u7F72\u3092\u5916\u3057\u3066\u6700\u4E0A\u4F4D\u306B\u3059\u308B",resolve:(ctx,ref,flag)=>ctx.resolver.department(ref,flag)},{kind:"integer",flag:"--sor\
|
|
7
7
|
t",key:"sort",label:"\u8868\u793A\u9806",min:0,summary:"\u8868\u793A\u9806\uFF080\u4EE5\u4E0A\u306E\u6574\u6570\uFF09"},{kind:"date",flag:"--valid-from",key:"valid_from",summary:"\u6709\u52B9\u958B\u59CB\u65E5\uFF08YYYY-MM-DD\u30FBnone \u3067\u6D88\u3059\uFF09"},{kind:"date",flag:"--valid-to",key:"valid_to",summary:"\u6709\u52B9\u7D42\u4E86\u65E5\uFF08YYYY-MM-DD\u30FBnone \u3067\u6D88\u3059\uFF09\u3002\u3053\u306E\u65E5\u306E\u7FCC\u65E5\u304B\u3089\u7121\u52B9\u306B\u306A\u308B"},{kind:"boolean",
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{depositDomain,depositIdArg,describeDeposit,excerpt,parseAllocationRows,parsePlanBody,planSkeleton,salesAdminForbidden,sendAtomic}from"./chunk-
|
|
4
|
-
import"./chunk-QQRJLH6B.js";import"./chunk-II5RVJQN.js";import"./chunk-
|
|
3
|
+
import{depositDomain,depositIdArg,describeDeposit,excerpt,parseAllocationRows,parsePlanBody,planSkeleton,salesAdminForbidden,sendAtomic}from"./chunk-ELEOYXLD.js";import"./chunk-QLENN5DD.js";import"./chunk-CF3ZZKCZ.js";import"./chunk-OTIR4GES.js";import"./chunk-6LSQCOCJ.js";import"./chunk-Q2KIETMB.js";import"./chunk-GMBJTG6A.js";import"./chunk-QBGEYQ2I.js";import"./chunk-7UB4I3JF.js";import"./chunk-IF2K4PM5.js";import"./chunk-4VZKNEVN.js";
|
|
4
|
+
import"./chunk-QQRJLH6B.js";import"./chunk-II5RVJQN.js";import"./chunk-MI6HVYR2.js";import"./chunk-PS5QFKHB.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{depositDomain,depositIdArg,describeDeposit,excerpt,parseAllocationRows,parsePlanBody,planSkeleton,salesAdminForbidden,sendAtomic};
|