@tocca-systems/twp-cli 0.92.0 → 0.94.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 +12 -0
- package/README.md +81 -3
- package/dist/{agent-SX7Z5BVN.js → agent-JNWPWVHF.js} +1 -1
- package/dist/{agent-loop-QV7WHT7B.js → agent-loop-ED3PVMVI.js} +2 -2
- package/dist/{ai-dispatch-YPQGMOBK.js → ai-dispatch-FVHIWBCX.js} +2 -2
- package/dist/{analysis-6MPLKJUS.js → analysis-UP5QD5OD.js} +2 -2
- package/dist/{announcement-4ZK63ONY.js → announcement-A3J2DYSQ.js} +1 -1
- package/dist/{api-command-K6I3WSI4.js → api-command-VZRYCDYJ.js} +3 -3
- package/dist/api-key-YSHTZPY2.js +66 -0
- package/dist/{app-Z6NIVNWQ.js → app-VDQDKYEU.js} +5 -5
- package/dist/{attendance-correct-X67ITW3J.js → attendance-correct-GBJUPRTU.js} +2 -2
- package/dist/{attendance-lists-RVJIQAAM.js → attendance-lists-BIGQFPVN.js} +1 -1
- package/dist/{backlog-ZHON6HED.js → backlog-VJWLVDSM.js} +1 -1
- package/dist/{budget-FEEEYUX2.js → budget-VUMWU762.js} +2 -2
- package/dist/{capacity-list-command-GFHEKY47.js → capacity-list-command-CPUOR57V.js} +1 -1
- package/dist/{chunk-SZOEBJGI.js → chunk-24AJQUDZ.js} +1 -1
- package/dist/{chunk-NELPXRBC.js → chunk-3E7QVTKD.js} +1 -1
- package/dist/{chunk-RZA3PZNH.js → chunk-42XM4ZF6.js} +1 -1
- package/dist/{chunk-VROESTZQ.js → chunk-4557EX6E.js} +1 -1
- package/dist/{chunk-3UOVTIM6.js → chunk-45WIRMGL.js} +1 -1
- package/dist/{chunk-6DM366P6.js → chunk-4DOPQ74T.js} +51 -47
- package/dist/{chunk-Y4U3F4UM.js → chunk-4JJFIPTI.js} +2 -2
- package/dist/{chunk-RY27USNC.js → chunk-4YCX5UNV.js} +1 -1
- package/dist/{chunk-IXT2X5BZ.js → chunk-5TKHN3A5.js} +6 -6
- package/dist/{chunk-PBMHUH73.js → chunk-5WJWURQT.js} +1 -1
- package/dist/chunk-5YJSWKQG.js +18 -0
- package/dist/{chunk-N3I76TL6.js → chunk-6CALO6LE.js} +1 -1
- package/dist/{chunk-FLLSRBFZ.js → chunk-6FPW6T4P.js} +1 -1
- package/dist/{chunk-VBIZ6U7C.js → chunk-6HR26FNC.js} +1 -1
- package/dist/{chunk-M763HXDH.js → chunk-A3VGBVQP.js} +1 -1
- package/dist/{chunk-NXPLTDN4.js → chunk-BABZL52A.js} +9 -9
- package/dist/chunk-C7MCP63I.js +51 -0
- package/dist/{chunk-JBAVETQP.js → chunk-DMMSNDDD.js} +1 -1
- package/dist/{chunk-BPLDHTAS.js → chunk-EOXGQHZA.js} +1 -1
- package/dist/{chunk-HZNC2UFL.js → chunk-FLIY4GM2.js} +1 -1
- package/dist/{chunk-GLOGPK4Y.js → chunk-ILEV32T6.js} +1 -1
- package/dist/{chunk-6EQLA56A.js → chunk-INS77QHY.js} +1 -1
- package/dist/chunk-MP36JZRV.js +12 -0
- package/dist/{settings-command-TEVH2MNY.js → chunk-MTK4WY54.js} +12 -11
- package/dist/{chunk-BROJYH74.js → chunk-MZB4KA26.js} +1 -1
- package/dist/chunk-NJL3H2BB.js +7 -0
- package/dist/{chunk-D6MAASMD.js → chunk-O6GAIXHJ.js} +1 -1
- package/dist/{chunk-3D734ED2.js → chunk-P54LCXEY.js} +1 -1
- package/dist/{chunk-4DUZIRGL.js → chunk-PTLUNRQS.js} +10 -10
- package/dist/chunk-QBUVJBZ2.js +13 -0
- package/dist/{chunk-MQOHOOJP.js → chunk-SPQJNTAK.js} +1 -1
- package/dist/{chunk-NB2GXB27.js → chunk-SQMJ7XKE.js} +1 -1
- package/dist/{chunk-ELW4VTSK.js → chunk-TUFWQYKB.js} +1 -1
- package/dist/{chunk-3S52X3Z7.js → chunk-VHKZ6RUA.js} +1 -1
- package/dist/{chunk-IQL7NZKM.js → chunk-VRRDGI2I.js} +1 -1
- package/dist/chunk-X3F7DOP5.js +4 -0
- package/dist/{chunk-VOSADZUE.js → chunk-XG2MNO5M.js} +3 -3
- package/dist/{chunk-7UAJ3ZY7.js → chunk-YB4ZDJXR.js} +1 -1
- package/dist/cli.js +52 -12
- package/dist/{commands-MNYRRJBT.js → commands-G3KAD2J7.js} +2 -2
- package/dist/{commands-23GMSCTQ.js → commands-VUDISST6.js} +37 -34
- package/dist/{company-YFHD4RLP.js → company-HUP72FGC.js} +2 -2
- package/dist/{completion-KPMCNLV2.js → completion-INVEPDAF.js} +6 -5
- package/dist/{contract-C7PTM573.js → contract-WE37KVDC.js} +2 -2
- package/dist/{department-JZVWFUCI.js → department-5V4W37PU.js} +1 -1
- package/dist/{deposit-NUWEBC7M.js → deposit-VI3KTO7N.js} +2 -2
- package/dist/{dispatch-GSBMRWQ4.js → dispatch-ZRC3TVFT.js} +1 -1
- package/dist/{domain-knowledge-QDSWQW4E.js → domain-knowledge-NOORBHDM.js} +1 -1
- package/dist/{estimate-GJEDV3D5.js → estimate-5GPJ33DO.js} +4 -4
- package/dist/{evaluation-KQPTG4G3.js → evaluation-5Q5GHKM3.js} +2 -2
- package/dist/{expense-NFQY5NZN.js → expense-F5UUXTGV.js} +1 -1
- package/dist/faq-QBCNTMXP.js +122 -0
- package/dist/{fiscal-year-GL3RFX6H.js → fiscal-year-CVYFYGRR.js} +1 -1
- package/dist/{holiday-FUYMZVGX.js → holiday-UPF22P5V.js} +2 -2
- package/dist/{inquiry-XMM6EHNJ.js → inquiry-57RLTCK2.js} +1 -1
- package/dist/{invoice-MLJEVQA4.js → invoice-FL42M3A4.js} +2 -2
- package/dist/{job-title-JHTVL7OO.js → job-title-LEHO7TBW.js} +1 -1
- package/dist/{knowledge-MROBIUE5.js → knowledge-CELSHUX6.js} +2 -2
- package/dist/{leave-GXVOULRK.js → leave-7BXZEIEQ.js} +2 -2
- package/dist/{license-XUPFMAGX.js → license-YOBNOTSR.js} +1 -1
- package/dist/{login-history-JIWV62KF.js → login-history-RCUHEEYE.js} +1 -1
- package/dist/{logout-guard-HUCILXP7.js → logout-guard-PEETWT4A.js} +1 -1
- package/dist/{media-FKKQA223.js → media-3NPBMB7J.js} +3 -3
- package/dist/{notification-YAT6O2TK.js → notification-BE6KRW5R.js} +1 -1
- package/dist/{oneshot-HV5VMNFX.js → oneshot-2V5GL6OA.js} +1 -1
- package/dist/orientation-command-PQ3QXDPE.js +25 -0
- package/dist/{outlook-GXWQLCR6.js → outlook-RWEUIFAI.js} +2 -2
- package/dist/{plan-submit-I5QAVNZN.js → plan-submit-7724A3OV.js} +2 -2
- package/dist/{position-33HC7ETC.js → position-YAC32O37.js} +1 -1
- package/dist/{project-O6TQKZBJ.js → project-EQQEF622.js} +2 -2
- package/dist/{prospect-LQ2RLIBN.js → prospect-C3OWZPUJ.js} +1 -1
- package/dist/{purchase-E25SBHR2.js → purchase-7NN4SIER.js} +3 -3
- package/dist/{receivable-M3IUSRB7.js → receivable-4UCQ5G4R.js} +1 -1
- package/dist/{redmine-OIBKHGK3.js → redmine-THH5YMND.js} +1 -1
- package/dist/{registry-QHNBNSNA.js → registry-Z6LO3TZY.js} +1 -1
- package/dist/{render-BY4KHD5D.js → render-XILFR4N3.js} +1 -1
- package/dist/{report-TS7D6YF5.js → report-TQRJJEGK.js} +1 -1
- package/dist/{run-AHNWMLZ4.js → run-EJT5I7NM.js} +2 -2
- package/dist/{runner-command-GN45H7TL.js → runner-command-PIHQW65P.js} +1 -1
- package/dist/{sales-ai-review-KYYUF5HG.js → sales-ai-review-JH6UAUHC.js} +2 -2
- package/dist/{sales-master-UNKMFZDV.js → sales-master-QF4ZGAGF.js} +3 -3
- package/dist/{sales-numbering-URGXUTUX.js → sales-numbering-I4CGWWLF.js} +2 -2
- package/dist/{search-OEOAUIW3.js → search-65MA22AA.js} +1 -1
- package/dist/{segment-H7FFI52Z.js → segment-PTTW7IJM.js} +1 -1
- package/dist/server-settings-DR3KPUCD.js +4 -0
- package/dist/settings-command-3SLINN5N.js +3 -0
- package/dist/{setup-FX2IUBHT.js → setup-ICJPTYKW.js} +1 -1
- package/dist/{skill-BJFHENEO.js → skill-J2HXRXLF.js} +2 -2
- package/dist/{skill-manage-command-Z4MLSACA.js → skill-manage-command-RKQHSPRJ.js} +2 -2
- package/dist/{staffing-board-2ZV2Q6TC.js → staffing-board-FSZ6WM2E.js} +3 -3
- package/dist/{status-command-XOELHUCV.js → status-command-5G7ZNGN2.js} +2 -2
- package/dist/{supplier-payment-2OVDNHBD.js → supplier-payment-OOX5NQH5.js} +3 -3
- package/dist/{support-6NZCSDPJ.js → support-LWKDMVP7.js} +2 -2
- package/dist/{task-GLFAR4GN.js → task-XF3MUGDE.js} +4 -4
- package/dist/{teams-KNXVEWMD.js → teams-J66HFCF5.js} +1 -1
- package/dist/{user-L6NYXPV6.js → user-PWZUOZGI.js} +43 -22
- package/dist/{user-contract-type-2PUE2JQL.js → user-contract-type-XM4G3TX5.js} +1 -1
- package/dist/{user-group-EIYVFUTB.js → user-group-5V3L7WYR.js} +1 -1
- package/dist/{worker-agent-2BARDPDL.js → worker-agent-G6MC436V.js} +1 -1
- package/dist/{workflow-P4SJX6YR.js → workflow-KTXVWCPN.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-EOXTDZTA.js +0 -13
- package/dist/chunk-ISLZWSHN.js +0 -17
- package/dist/chunk-JQQP7JLQ.js +0 -4
- package/dist/chunk-LGNYEROA.js +0 -12
- package/dist/chunk-UVTOBRHP.js +0 -49
- package/dist/faq-QVRTJ3KS.js +0 -68
- package/dist/server-settings-TFVXMOJB.js +0 -4
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems}from"./chunk-
|
|
4
|
-
import{USER_REF_FLAG,USER_REF_HELP,prepareUser,userPath}from"./chunk-UVCJXHWN.js";import
|
|
5
|
-
import{ResolveError,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-MMVXE2CJ.js";import"./chunk-
|
|
6
|
-
UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";var ASSIGNMENT_COLUMNS=["id","department_name","position_name","start_date","end_date","is_primary","is_current","is_approval_route","effective_status"];function assignmentRows(body){const response=isRecord(body)&&"response"in body?body["response"]:body;const list=isRecord(response)?response["list"]:void 0;if(!Array.isArray(list)){throw new ApiResponseError("\u6240\u5C5E\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
3
|
+
import{ASSIGNED_PROJECT_COLUMNS,assignedProjectItems}from"./chunk-4JJFIPTI.js";import{FISCAL_YEAR_FLAG,fiscalYear,skillNames}from"./chunk-VHKZ6RUA.js";import{LICENSE_FEATURE_NAMES,levelHoldsSeat,permissionMovesSeat,readLicenses}from"./chunk-VRRDGI2I.js";import{CONCURRENCY,exportOperation,mapPool,pacedSender}from"./chunk-ZFSQJAYZ.js";import"./chunk-ILEV32T6.js";import{readCsvFileText}from"./chunk-QLENN5DD.js";import"./chunk-SQMJ7XKE.js";import"./chunk-SPQJNTAK.js";
|
|
4
|
+
import{USER_REF_FLAG,USER_REF_HELP,prepareUser,userPath}from"./chunk-UVCJXHWN.js";import{createFlags,fieldBody,hasAnyField,resolveRefFields,updateFlags}from"./chunk-45WIRMGL.js";import"./chunk-EXT4AIDF.js";import{booleanText,boundedText,isoDate,isoDateValue}from"./chunk-JJSBBWJ5.js";import"./chunk-A3VGBVQP.js";import"./chunk-W4NLJ2YK.js";import"./chunk-5TKHN3A5.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{DEPARTMENTS_PATH,ORG_MASTER_LIMIT,
|
|
5
|
+
POSITIONS_PATH}from"./chunk-4DOPQ74T.js";import{ResolveError,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import{ApiError}from"./chunk-JA5A6UJ2.js";import"./chunk-MMVXE2CJ.js";import"./chunk-II5RVJQN.js";import{LIST_FLAGS,LIST_PAGING_HELP,envelopePaging,nonEmpty,positiveInteger,shellQuote}from"./chunk-MI6HVYR2.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";import{ApiRejectedError,
|
|
6
|
+
ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";import fs from"fs";var ASSIGNMENT_COLUMNS=["id","department_name","position_name","start_date","end_date","is_primary","is_current","is_approval_route","effective_status"];function assignmentRows(body){const response=isRecord(body)&&"response"in body?body["response"]:body;const list=isRecord(response)?response["list"]:void 0;if(!Array.isArray(list)){throw new ApiResponseError("\u6240\u5C5E\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
7
7
|
return list}async function nameMap(ctx,path,label2){try{const body=await ctx.send({method:"GET",path,query:{limit:ORG_MASTER_LIMIT}});const list=isRecord(body)?body["list"]:void 0;if(!Array.isArray(list))throw new Error(`${label2}\u4E00\u89A7\u306E\u5FDC\u7B54\u306B list \u914D\u5217\u304C\u3042\u308A\u307E\u305B\u3093`);const count=isRecord(body)?body["count"]:void 0;if(typeof count==="number"&&count>list.length){ctx.warn(`${label2}\u4E00\u89A7\u304C ${count} \u4EF6\u4E2D ${list.length} \u4EF6\u3067\u5207\u308A\u8A70\u3081\u3089\
|
|
8
8
|
\u308C\u305F\u305F\u3081\u3001\u4E00\u90E8\u306E${label2}\u540D\u306F\u7A7A\u6B04\u3067\u3059\u3002ID \u306F --output json \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002`)}const map={};for(const row of list){if(isRecord(row)&&typeof row["id"]==="string"&&typeof row["name"]==="string"){map[row["id"]]=row["name"]}}return map}catch(err){ctx.warn(`${label2}\u540D\u3092\u53D6\u5F97\u3067\u304D\u306A\u304B\u3063\u305F\u305F\u3081\u3001${label2}\u540D\u306E\u5217\u306F\u7A7A\u6B04\u3067\u3059\uFF08${err.
|
|
9
9
|
message}\uFF09\u3002ID \u306F --output json \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\u3002`);return{}}}function assignmentPlan(input){const suffix=input.flags.has("--current")?"/assignments/current":"/assignments";return{method:"GET",path:`/api/v2/organization/users/${userPath(input,suffix)}`}}var listOperation={name:"list",summary:"\u30E6\u30FC\u30B6\u30FC\u306E\u6240\u5C5E\u306E\u5C65\u6B74\u3092\u4E00\u89A7\u3059\u308B",usage:"twp user assignment list <\u30E6\u30FC\u30B6\u30FC> [--current]",
|
|
@@ -172,11 +172,12 @@ ctx.warn(lines.join("\n"));throw new ApiRejectedError(`\u4E00\u62EC\u62DB\u5F85\
|
|
|
172
172
|
INVITE_REF_HELP)}const hit=hits[0]?.["token"];if(typeof hit!=="string"||!/^[A-Za-z0-9_-]+$/.test(hit)){throw new ApiResponseError("\u62DB\u5F85\u4E00\u89A7\u306E\u5FDC\u7B54\u306E\u30C8\u30FC\u30AF\u30F3\u3092\u30D1\u30B9\u306B\u4F7F\u3048\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}return hit}function invitePath(token,suffix=""){return`${INVITATIONS_PATH}/${encodeURIComponent(token)}${suffix}`}function refPlan(input,method,suffix=""){const token=input.
|
|
173
173
|
resolved?.["token"];return{method,path:token===void 0?`${INVITATIONS_PATH}/{token}${suffix}`:invitePath(token,suffix)}}function refNotes(input){const email=input.resolved?.["email"];return email===void 0?[]:[`\u3053\u306E\u524D\u306B\u3001${email} \u5B9B\u3066\u306E\u62DB\u5F85\u306E\u30C8\u30FC\u30AF\u30F3\u3092\u8ABF\u3079\u308B\u305F\u3081\u62DB\u5F85\u4E00\u89A7\u3092 GET \u3057\u307E\u3059\uFF08{token} \u306F\u305D\u306E\u7D50\u679C\u3067\u57CB\u307E\u308A\u307E\u3059\uFF09\u3002`]}var userInviteResource={
|
|
174
174
|
name:"invite",summary:"\u30E6\u30FC\u30B6\u30FC\u306E\u62DB\u5F85\uFF081\u4EF6\u30FBCSV \u4E00\u62EC\u30FB\u4E00\u89A7\u30FB\u518D\u9001\u30FB\u53D6\u6D88\uFF09",operations:[{name:"create",summary:"1\u4EBA\u3092\u62DB\u5F85\u3059\u308B\uFF08\u62DB\u5F85\u30E1\u30FC\u30EB\u3092\u9001\u308B\uFF09",usage:"twp user invite create --email <\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9> [--role user|admin|super_admin] [--name <\u6C0F\u540D>]",description:"--email \u304C\u5FC5\u9808\u3067\u3059\u3002--role \u3092\u7701\u304F\u3068\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\uFF08user\uFF09\u3067\u62DB\u5F85\u3057\u307E\u3059\u3002\n--nam\
|
|
175
|
-
e \u306F\u62DB\u5F85\u30E1\u30FC\u30EB\u3068\u53D7\u8AFE\u753B\u9762\u306B\u51FA\u3059\u6C0F\u540D\u3067\u3059\uFF08\u53D7\u8AFE\u6642\u306B\u672C\u4EBA\u304C\u5909\u66F4\u3067\u304D\u307E\u3059\uFF09\u3002\n\u6A5F\u80FD\u6A29\u9650\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u65E2\u5B9A\u3092\u4F7F\u3044\u307E\u3059\u3002\n\n"+ROLE_HELP,forbidden:FORBIDDEN2,flags:[{name:"--email",summary:"\u62DB\u5F85\u3059\u308B\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",
|
|
176
|
-
{name:"--role",summary:"\u6A29\u9650\uFF08user / admin / super_admin\uFF09",takesValue:true,placeholder:"<\u6A29\u9650>"},{name:"--name",summary:"\u6C0F\u540D\uFF08\u62DB\u5F85\u30E1\u30FC\u30EB\u3068\u53D7\u8AFE\u753B\u9762\u306B\u51FA\u308B\uFF09",takesValue:true,placeholder:"<\u6C0F\u540D>"}],async prepare(input){if(input.args.length>0){throw new UsageError(`create \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.
|
|
177
|
-
flags.get("--email")?.trim()??"";if(email==="")throw new UsageError("--email \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","twp user invite create help");if(!EMAIL_RE.test(email))throw new UsageError(`--email \u306E\u5F62\u304C\u9055\u3044\u307E\u3059: ${email}`,"\u4F8B: --email new.member@example.com");const role=input.flags.get("--role");if(role!==void 0)roleValue(role,"--role ");const name=input.flags.get("--name");if(name!==
|
|
178
|
-
\u307E\u3059\uFF08${[...name].length} \u6587\u5B57\u30FB\u4E0A\u9650 255 \u6587\u5B57\uFF09`,"twp user invite create help")}return input},plan(input){const role=input.flags.get("--role");const name=input.flags.get("--name")?.trim();return{method:"POST",path:INVITATIONS_PATH,body:{email:input.flags.get("--email").trim(),role:role===void 0?"user":roleValue(role,"--role "),...name!==void 0&&name!==""?{user_name:name}:
|
|
179
|
-
\uFF09\u3067\u62DB\u5F85\u3057\u307E\u3059\u3002"],summarize:body=>successAck(body,"\u62DB\u5F85"),raw:body=>successAck(body,"\u62DB\u5F85")},{name:"bulk",summary:"CSV \u306E\u5168\u54E1\u3092\u62DB\u5F85\u3059\u308B\uFF081\u56DE 50 \u4EF6\u307E\u3067\uFF09",usage:"twp user invite bulk --file <CSV>",description:`CSV \u306F\u300C\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9, \u6A29\u9650\u300D\u306E2\u5217\u3067\u3059\uFF081\u884C\u76EE\u306E\u30D8\u30C3\u30C0
|
|
175
|
+
e \u306F\u62DB\u5F85\u30E1\u30FC\u30EB\u3068\u53D7\u8AFE\u753B\u9762\u306B\u51FA\u3059\u6C0F\u540D\u3067\u3059\uFF08\u53D7\u8AFE\u6642\u306B\u672C\u4EBA\u304C\u5909\u66F4\u3067\u304D\u307E\u3059\uFF09\u3002\n\u6A5F\u80FD\u6A29\u9650\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u65E2\u5B9A\u3092\u4F7F\u3044\u307E\u3059\uFF08twp user default-permission list \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\uFF09\u3002\n\n"+ROLE_HELP,forbidden:FORBIDDEN2,flags:[{name:"--email",summary:"\u62DB\u5F85\u3059\u308B\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",
|
|
176
|
+
takesValue:true,placeholder:"<\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9>"},{name:"--role",summary:"\u6A29\u9650\uFF08user / admin / super_admin\uFF09",takesValue:true,placeholder:"<\u6A29\u9650>"},{name:"--name",summary:"\u6C0F\u540D\uFF08\u62DB\u5F85\u30E1\u30FC\u30EB\u3068\u53D7\u8AFE\u753B\u9762\u306B\u51FA\u308B\uFF09",takesValue:true,placeholder:"<\u6C0F\u540D>"}],async prepare(input){if(input.args.length>0){throw new UsageError(`create \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.
|
|
177
|
+
args.join(" ")}`,"twp user invite create help")}const email=input.flags.get("--email")?.trim()??"";if(email==="")throw new UsageError("--email \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","twp user invite create help");if(!EMAIL_RE.test(email))throw new UsageError(`--email \u306E\u5F62\u304C\u9055\u3044\u307E\u3059: ${email}`,"\u4F8B: --email new.member@example.com");const role=input.flags.get("--role");if(role!==void 0)roleValue(role,"--role ");const name=input.flags.get("--name");if(name!==
|
|
178
|
+
void 0&&[...name].length>255){throw new UsageError(`\u6C0F\u540D\u304C\u9577\u3059\u304E\u307E\u3059\uFF08${[...name].length} \u6587\u5B57\u30FB\u4E0A\u9650 255 \u6587\u5B57\uFF09`,"twp user invite create help")}return input},plan(input){const role=input.flags.get("--role");const name=input.flags.get("--name")?.trim();return{method:"POST",path:INVITATIONS_PATH,body:{email:input.flags.get("--email").trim(),role:role===void 0?"user":roleValue(role,"--role "),...name!==void 0&&name!==""?{user_name:name}:
|
|
179
|
+
{}}}},plannedNotes:input=>input.flags.has("--role")?[]:["--role \u672A\u6307\u5B9A\u306E\u305F\u3081\u3001\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\uFF08user\uFF09\u3067\u62DB\u5F85\u3057\u307E\u3059\u3002"],summarize:body=>successAck(body,"\u62DB\u5F85"),raw:body=>successAck(body,"\u62DB\u5F85")},{name:"bulk",summary:"CSV \u306E\u5168\u54E1\u3092\u62DB\u5F85\u3059\u308B\uFF081\u56DE 50 \u4EF6\u307E\u3067\uFF09",usage:"twp user invite bulk --file <CSV>",description:`CSV \u306F\u300C\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9, \u6A29\u9650\u300D\u306E2\u5217\u3067\u3059\uFF081\u884C\u76EE\u306E\u30D8\u30C3\u30C0 em\
|
|
180
|
+
ail,role \u306F\u7701\u7565\u3067\u304D\u307E\u3059\uFF09\u3002
|
|
180
181
|
\u6C0F\u540D\u306E\u5217\u306F\u7F6E\u3051\u307E\u305B\u3093\uFF08\u4E00\u62EC\u62DB\u5F85\u3067\u306F\u6C0F\u540D\u306F\u9001\u3089\u308C\u305A\u3001\u53D7\u8AFE\u6642\u306B\u672C\u4EBA\u304C\u5165\u529B\u3057\u307E\u3059\uFF09\u3002
|
|
181
182
|
\u7A7A\u884C\u3068 # \u3067\u59CB\u307E\u308B\u884C\u306F\u8AAD\u307F\u98DB\u3070\u3057\u307E\u3059\u3002
|
|
182
183
|
|
|
@@ -189,8 +190,8 @@ flags.get("--email")?.trim()??"";if(email==="")throw new UsageError("--email \u3
|
|
|
189
190
|
\u9001\u3063\u305F\u5F8C\u306B\u30B5\u30FC\u30D0\u304C\u884C\u3054\u3068\u306B\u65AD\u3063\u305F\u5834\u5408\uFF08\u65E2\u306B\u4F7F\u308F\u308C\u3066\u3044\u308B\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\u7B49\uFF09\u306F\u3001
|
|
190
191
|
\u5931\u6557\u3057\u305F\u884C\u3068\u9001\u4FE1\u6E08\u307F\u306E\u884C\u3092 stderr \u306B\u51FA\u3057\u3066\u7D42\u4E86\u30B3\u30FC\u30C9 3 \u3067\u7D42\u308F\u308A\u307E\u3059\uFF08\u9001\u4FE1\u6E08\u307F\u306E\u884C\u306F\u53D6\u308A\u6D88\u3055\u308C\u307E\u305B\u3093\uFF09\u3002
|
|
191
192
|
|
|
192
|
-
\u6A5F\u80FD\u6A29\u9650\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u65E2\u5B9A\u3092\u4F7F\u3044\u307E\u3059\u3002${ROLE_HELP}`,forbidden:FORBIDDEN2,flags:[{name:"--file",summary:"\u62DB\u5F85\u3059\u308B\u4EBA\u306E CSV\uFF08\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9, \u6A29\u9650\uFF09",takesValue:true,placeholder:"<CSV>"}],async prepare(input){const usage="twp user invite bulk help";if(input.args.length>0)throw new UsageError(
|
|
193
|
-
args.join(" ")}`,usage);const file=input.flags.get("--file");if(file===void 0||file.trim()==="")throw new UsageError("--file <CSV> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);const{rows,errors}=parseInviteCsv(readCsvFile(file,usage));if(errors.length>0){throw new UsageError(`CSV \u306B\u4E0D\u6B63\u306A\u884C\u304C ${errors.length} \u884C\u3042\u308B\u305F\u3081\u30011\u901A\u3082\u9001\u3063\u3066\u3044\u307E\u305B\u3093:
|
|
193
|
+
\u6A5F\u80FD\u6A29\u9650\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u65E2\u5B9A\u3092\u4F7F\u3044\u307E\u3059\uFF08twp user default-permission list \u3067\u78BA\u8A8D\u3067\u304D\u307E\u3059\uFF09\u3002${ROLE_HELP}`,forbidden:FORBIDDEN2,flags:[{name:"--file",summary:"\u62DB\u5F85\u3059\u308B\u4EBA\u306E CSV\uFF08\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9, \u6A29\u9650\uFF09",takesValue:true,placeholder:"<CSV>"}],async prepare(input){const usage="twp user invite bulk help";if(input.args.length>0)throw new UsageError(
|
|
194
|
+
`bulk \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,usage);const file=input.flags.get("--file");if(file===void 0||file.trim()==="")throw new UsageError("--file <CSV> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);const{rows,errors}=parseInviteCsv(readCsvFile(file,usage));if(errors.length>0){throw new UsageError(`CSV \u306B\u4E0D\u6B63\u306A\u884C\u304C ${errors.length} \u884C\u3042\u308B\u305F\u3081\u30011\u901A\u3082\u9001\u3063\u3066\u3044\u307E\u305B\u3093:
|
|
194
195
|
${errors.join("\n ")}`,`\u6B63\u3057\u3044\u884C\u306F ${rows.length} \u884C\u3067\u3059\u3002\u4E0D\u6B63\u306A\u884C\u3092\u76F4\u3059\u304B\u524A\u9664\u3057\u3066\u304B\u3089\u6253\u3061\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}if(rows.length===0)throw new UsageError(`CSV \u306B\u62DB\u5F85\u3059\u308B\u884C\u304C\u3042\u308A\u307E\u305B\u3093: ${file}`,usage);if(rows.length>BULK_MAX){throw new UsageError(`\u4E00\u5EA6\u306B\u62DB\u5F85\u3067\u304D\u308B\u306E\u306F ${BULK_MAX} \u4EF6\
|
|
195
196
|
\u307E\u3067\u3067\u3059\uFF08${rows.length} \u4EF6\uFF09`,`CSV \u3092 ${BULK_MAX} \u884C\u305A\u3064\u306B\u5206\u3051\u3066\u6253\u3063\u3066\u304F\u3060\u3055\u3044\u3002`)}return withResolved(input,{rows:JSON.stringify(rows)})},plan:bulkPlan,plannedNotes:input=>{const rows=bulkRows(input);return[`${rows.length} \u4EF6\u3092\u62DB\u5F85\u3057\u307E\u3059:`,...rows.map(row=>` ${row.line} \u884C\u76EE: ${row.email}\uFF08${row.role}\uFF09`)]},execute:runBulk,summarize:body=>(bulkBody(body).rows??
|
|
196
197
|
[]).map(row=>pick(row,["line","email","role","success","queued","error"])),raw:body=>{const response=bulkBody(body).response??body;if(!isRecord(response))return response;const rest={...response};delete rest["result"];return rest},notes:body=>{const response=bulkBody(body).response;const queued=isRecord(response)?response["queued_count"]:void 0;const warnings=isRecord(response)?response["license_warnings"]:void 0;const notes=[];if(typeof queued==="number"&&queued>0){notes.push(`${queued} \u4EF6\u306F\u9001\u4FE1\u5F85\u3061\u306E\u5217\
|
|
@@ -210,14 +211,14 @@ join(" / ")}`,"\u6A5F\u80FD\u30B3\u30FC\u30C9\u3067\u6307\u5B9A\u3057\u3066\u304
|
|
|
210
211
|
function levelOf(value,def){const level=value.trim().toLowerCase();if(!def.levels.includes(level)){throw new UsageError(`${def.label}\uFF08${def.code}\uFF09\u306B\u300C${value.trim()===""?"\uFF08\u7A7A\uFF09":value.trim()}\u300D\u306F\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093`,`${def.label} \u306B\u6307\u5B9A\u3067\u304D\u308B\u306E\u306F ${def.levels.join(" / ")} \u3067\u3059\u3002`)}return level}function parsePermissionCsv(text){const rows=[];const errors=[];const seen=new Map;let headerChecked=false;
|
|
211
212
|
text.replace(/^\uFEFF/,"").split(/\r?\n/).forEach((raw,index)=>{const line=index+1;if(raw.trim()===""||raw.trim().startsWith("#"))return;const cells=splitCsvLine(raw);if(!headerChecked){headerChecked=true;if(CSV_HEADERS.has((cells[0]??"").toLowerCase()))return}if(cells.length!==3){errors.push(`${line} \u884C\u76EE: \u5217\u304C ${cells.length} \u500B\u3042\u308A\u307E\u3059\uFF08\u30E6\u30FC\u30B6\u30FC, \u6A5F\u80FD, \u30EC\u30D9\u30EB \u306E3\u5217\u306B\u3057\u3066\u304F\u3060\u3055\u3044\uFF09`);
|
|
212
213
|
return}const[user,feature,level]=cells;const missing=[user===""?"\u30E6\u30FC\u30B6\u30FC":null,feature===""?"\u6A5F\u80FD":null,level===""?"\u30EC\u30D9\u30EB":null].filter(item=>item!==null);if(missing.length>0){errors.push(`${line} \u884C\u76EE: ${missing.join("\u30FB")}\u304C\u7A7A\u3067\u3059`);return}const key=`${user.toLowerCase()}\0${feature.toLowerCase()}`;const first=seen.get(key);if(first!==void 0){errors.push(`${line} \u884C\u76EE: ${user} \u306E ${feature} \u306F ${first} \u884C\u76EE\u3068\u91CD\u8907\u3057\u3066\u3044\u307E\u3059`);
|
|
213
|
-
return}seen.set(key,line);rows.push({line,user,feature,level})});return{rows,errors}}function
|
|
214
|
-
"\u8907\u6570\u306E\u6A5F\u80FD\u3092\u5909\u3048\u308B\u3068\u304D\u306F --feature <\u6A5F\u80FD>=<\u30EC\u30D9\u30EB> \u3092\u7E70\u308A\u8FD4\u3057\u3066\u304F\u3060\u3055\u3044\uFF08--level \u306F\u4ED8\u3051\u307E\u305B\u3093\uFF09\u3002")}return[{
|
|
215
|
-
|
|
216
|
-
\u6307\u5B9A\u3057\u307E\u3059\uFF09: ${input.args.join(" ")}`,UPDATE_HELP)}const mixed=[USER_REF_FLAG.name,FEATURE_FLAG.name,LEVEL_FLAG.name].filter(flag=>input.flags.has(flag)||repeatedValues(input,flag).length>0);if(mixed.length>0){throw new UsageError(`--file \u3068 ${mixed.join(" / ")} \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093\uFF08\u884C\u3054\u3068\u306E\u5024\u306F CSV \u306E\u5217\u3067\u6E21\u3057\u307E\u3059\uFF09`,
|
|
217
|
-
name)??"";if(file.trim()==="")throw new UsageError("--file <CSV> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",UPDATE_HELP);const text=readCsvFileText(file,UPDATE_HELP,CSV_MAX_BYTES2,size=>new UsageError(`--file \u306E\u30D5\u30A1\u30A4\u30EB\u304C\u5927\u304D\u3059\u304E\u307E\u3059\uFF08${size} \u30D0\u30A4\u30C8\u30FB\u4E0A\u9650 ${CSV_MAX_BYTES2} \u30D0\u30A4\u30C8\uFF09: ${file}`,"CSV \u3092\u5206\u3051\u3066\u6253\u3063\u3066\u304F\u3060\u3055\u3044\u3002"));
|
|
218
|
-
text);raw=parsed.rows;errors.push(...parsed.errors.map(message=>({line:Number(message.split(" ")[0]),text:message})));if(raw.length===0&&errors.length===0)throw new UsageError(`CSV \u306B\u5909\u3048\u308B\u884C\u304C\u3042\u308A\u307E\u305B\u3093: ${file}`,UPDATE_HELP)}else{const user=singleRef(input,{flag:USER_REF_FLAG.name,label:"\u30E6\u30FC\u30B6\u30FC",usage:UPDATE_USAGE});raw=flagRows(input,user)}const defs=await featureDefs(ctx);const rows=[];const seen=new Map;
|
|
219
|
-
const def=featureDef(row.feature,defs);const level=levelOf(row.level,def);const user=await ctx.resolver.user(row.user,"\u30E6\u30FC\u30B6\u30FC");const key=`${user.id}\0${def.code}`;const first=seen.get(key);if(first!==void 0){throw new UsageError(`${row.user} \u306E ${def.label} \u306F ${first}\u3068\u540C\u3058\u6307\u5B9A\u3067\u3059\uFF081\u4EBA\u30FB1\u6A5F\u80FD\u306B\u3064\u304D1\u4EF6\u306B\u3057\u3066\u304F\u3060\u3055\u3044\uFF09`)}seen.set(key,row.line===null
|
|
220
|
-
|
|
214
|
+
return}seen.set(key,line);rows.push({line,user,feature,level})});return{rows,errors}}function featureLevelFlags(input,usage){const features=repeatedValues(input,FEATURE_FLAG.name);const level=input.flags.get(LEVEL_FLAG.name);if(features.length===0)throw new UsageError("--feature \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",usage);if(level!==void 0){if(features.length>1||features[0].includes("=")){throw new UsageError("--level \u3068\u4E00\u7DD2\u306B\u4F7F\u3048\u308B\u306E\u306F --feature 1\u3064\uFF08= \u3092\u542B\u307E\u306A\u3044\u5F62\uFF09\u3060\u3051\u3067\u3059",
|
|
215
|
+
"\u8907\u6570\u306E\u6A5F\u80FD\u3092\u5909\u3048\u308B\u3068\u304D\u306F --feature <\u6A5F\u80FD>=<\u30EC\u30D9\u30EB> \u3092\u7E70\u308A\u8FD4\u3057\u3066\u304F\u3060\u3055\u3044\uFF08--level \u306F\u4ED8\u3051\u307E\u305B\u3093\uFF09\u3002")}return[{feature:features[0],level}]}return features.map(value=>{const at=value.indexOf("=");if(at<0){throw new UsageError(`--feature ${value} \u306E\u30EC\u30D9\u30EB\u304C\u3042\u308A\u307E\u305B\u3093`,"--level <\u30EC\u30D9\u30EB> \u3092\u4ED8\u3051\u308B\u304B\u3001--feature <\u6A5F\u80FD>=<\u30EC\u30D9\u30EB> \u306E\u5F62\u3067\u6307\u5B9A\u3057\u3066\u304F\u3060\
|
|
216
|
+
\u3055\u3044\u3002")}return{feature:value.slice(0,at),level:value.slice(at+1)}})}function flagRows(input,user){return featureLevelFlags(input,UPDATE_USAGE).map(pair=>({line:null,user,...pair}))}var REJECTED_BEFORE_WRITE=new Set([400,403,404,409,422]);function where(row){return row.line===null?"":`${row.line} \u884C\u76EE: `}async function prepareUpdate(input,ctx){const bulk=input.flags.has(FILE_FLAG2.name);let raw;const errors=[];if(bulk){if(input.args.length>0){throw new UsageError(`--file \u306E\u3068\u304D\u306F\
|
|
217
|
+
\u30E6\u30FC\u30B6\u30FC\u3092\u4F4D\u7F6E\u5F15\u6570\u3067\u53D7\u3051\u307E\u305B\u3093\uFF08CSV \u306E\u5217\u3067\u6307\u5B9A\u3057\u307E\u3059\uFF09: ${input.args.join(" ")}`,UPDATE_HELP)}const mixed=[USER_REF_FLAG.name,FEATURE_FLAG.name,LEVEL_FLAG.name].filter(flag=>input.flags.has(flag)||repeatedValues(input,flag).length>0);if(mixed.length>0){throw new UsageError(`--file \u3068 ${mixed.join(" / ")} \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093\uFF08\u884C\u3054\u3068\u306E\u5024\u306F CSV \u306E\u5217\u3067\u6E21\u3057\u307E\u3059\uFF09`,
|
|
218
|
+
UPDATE_HELP)}const file=input.flags.get(FILE_FLAG2.name)??"";if(file.trim()==="")throw new UsageError("--file <CSV> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",UPDATE_HELP);const text=readCsvFileText(file,UPDATE_HELP,CSV_MAX_BYTES2,size=>new UsageError(`--file \u306E\u30D5\u30A1\u30A4\u30EB\u304C\u5927\u304D\u3059\u304E\u307E\u3059\uFF08${size} \u30D0\u30A4\u30C8\u30FB\u4E0A\u9650 ${CSV_MAX_BYTES2} \u30D0\u30A4\u30C8\uFF09: ${file}`,"CSV \u3092\u5206\u3051\u3066\u6253\u3063\u3066\u304F\u3060\u3055\u3044\u3002"));
|
|
219
|
+
const parsed=parsePermissionCsv(text);raw=parsed.rows;errors.push(...parsed.errors.map(message=>({line:Number(message.split(" ")[0]),text:message})));if(raw.length===0&&errors.length===0)throw new UsageError(`CSV \u306B\u5909\u3048\u308B\u884C\u304C\u3042\u308A\u307E\u305B\u3093: ${file}`,UPDATE_HELP)}else{const user=singleRef(input,{flag:USER_REF_FLAG.name,label:"\u30E6\u30FC\u30B6\u30FC",usage:UPDATE_USAGE});raw=flagRows(input,user)}const defs=await featureDefs(ctx);const rows=[];const seen=new Map;
|
|
220
|
+
for(const row of raw){try{const def=featureDef(row.feature,defs);const level=levelOf(row.level,def);const user=await ctx.resolver.user(row.user,"\u30E6\u30FC\u30B6\u30FC");const key=`${user.id}\0${def.code}`;const first=seen.get(key);if(first!==void 0){throw new UsageError(`${row.user} \u306E ${def.label} \u306F ${first}\u3068\u540C\u3058\u6307\u5B9A\u3067\u3059\uFF081\u4EBA\u30FB1\u6A5F\u80FD\u306B\u3064\u304D1\u4EF6\u306B\u3057\u3066\u304F\u3060\u3055\u3044\uFF09`)}seen.set(key,row.line===null?
|
|
221
|
+
`--feature ${row.feature}`:`${row.line} \u884C\u76EE`);rows.push({line:row.line,user:row.user,userId:user.id,feature:def.code,featureLabel:def.label,level})}catch(err){if(!(err instanceof UsageError))throw err;if(!bulk)throw err;errors.push({line:row.line??0,text:`${row.line} \u884C\u76EE: ${err.message}`})}}if(errors.length>0){errors.sort((a,b)=>a.line-b.line);throw new UsageError(`CSV \u306B\u4E0D\u6B63\u306A\u884C\u304C ${errors.length} \u884C\u3042\u308B\u305F\u3081\u30011\u4EF6\u3082\u9001\u3063\u3066\u3044\u307E\u305B\u3093:
|
|
221
222
|
${errors.map(e=>e.text).join("\n ")}`,`\u6B63\u3057\u3044\u884C\u306F ${rows.length} \u884C\u3067\u3059\u3002\u4E0D\u6B63\u306A\u884C\u3092\u76F4\u3059\u304B\u524A\u9664\u3057\u3066\u304B\u3089\u6253\u3061\u76F4\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return withResolved(input,{rows:JSON.stringify(rows)})}function permissionRows(input){return JSON.parse(requireResolved(input,"rows"))}function userPathOf(userId){if(!isSafePathSegment(userId)){throw new ApiResponseError(`\u30B5\u30FC\u30D0\u304C\u8FD4\u3057\u305F\u30E6\u30FC\u30B6\u30FC ID \u3092\u30D1\u30B9\u306B\
|
|
222
223
|
\u4F7F\u3048\u307E\u305B\u3093: ${userId}\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}return`/api/v2/admin/users/${encodeURIComponent(userId)}`}function rowPlan2(row){const key=`${row.feature}_level`;return{method:"PUT",path:userPathOf(row.userId),body:{user_id:row.userId,update_fields:[key],[key]:row.level}}}var EFFECT_TEXT={unchanged:"\u5909\u66F4\u306A\u3057",assign:"\u30E9\u30A4\u30BB\u30F3\u30B9\u3092\u5272\u308A\u5F53\u3066\u308B\uFF08\u7A7A\u304D \u22121\uFF09",
|
|
223
224
|
release:"\u30E9\u30A4\u30BB\u30F3\u30B9\u3092\u89E3\u9664\u3059\u308B\uFF08\u7A7A\u304D +1\uFF09",update:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306F\u305D\u306E\u307E\u307E\uFF08\u5272\u5F53\u306E\u30EC\u30D9\u30EB\u3092\u66F4\u65B0\uFF09",kept:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5272\u5F53\u306F\u6B8B\u308B",none:"\u30E9\u30A4\u30BB\u30F3\u30B9\u306F\u52D5\u304B\u306A\u3044"};function seatEffect(feature,from,to,licensed){if(from===to)return"unchanged";if(levelHoldsSeat(feature,to))return licensed?
|
|
@@ -279,7 +280,26 @@ return body["rows"]}var listOperation2={name:"list",summary:"1\u4EBA\u306E\u6A5F
|
|
|
279
280
|
d_at\uFF09\u3082\u51FA\u307E\u3059\u3002\n\n"+USER_REF_HELP,forbidden:FORBIDDEN3,flags:[USER_REF_FLAG],async prepare(input,ctx){const resolved=await prepareUser(input,ctx,LIST_USAGE);const defs=await featureDefs(ctx);return withResolved(resolved,{defs:JSON.stringify([...defs.values()])})},plan:input=>({method:"GET",path:userPathOf(requireResolved(input,"userId"))}),plannedNotes:()=>["\u3053\u306E\u3042\u3068\u3001\u3053\u306E\u30E6\u30FC\u30B6\u30FC\u306E\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5272\u5F53\u3092 GET \u3057\u307E\u3059\uFF08\u8AAD\u307F\u53D6\u308A\u3060\u3051\uFF09\u3002"],
|
|
280
281
|
async execute(input,ctx){const userId=requireResolved(input,"userId");const detail=await ctx.send({method:"GET",path:userPathOf(userId)});const licenses=licenseList(await ctx.send({method:"GET",path:`/api/v2/licenses/users/${encodeURIComponent(userId)}`}));const defs=JSON.parse(requireResolved(input,"defs"));return{permissionList:true,rows:listRows2(defs,detail,licenses)}},summarize:body=>listBody(body).map(row=>pick(row,LIST_COLUMNS2)),raw:body=>listBody(body),notes(body){const stale=listBody(body).
|
|
281
282
|
filter(row=>row.license_assigned&&(row.level===null||row.level==="none"));return stale.length===0?[]:[`\u6A29\u9650\u304C none\uFF08\u307E\u305F\u306F\u5B9A\u7FA9\u306B\u7121\u3044\uFF09\u306A\u306E\u306B\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5272\u5F53\u304C\u6B8B\u3063\u3066\u3044\u308B\u6A5F\u80FD: ${stale.map(row=>row.feature_name).join("\u30FB")}`]}};var userPermissionResource={name:"permission",summary:"\u6A5F\u80FD\u6A29\u9650\uFF081\u4EBA\u306E\u4E00\u89A7\u30FB\u5909\u66F4\uFF0FCSV \u4E00\u62EC\u3002\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u5272\u5F53\u30FB\u89E3\u9664\u306F\u30B5\u30FC\u30D0\u304C\u9023\u52D5\uFF09",
|
|
282
|
-
operations:[listOperation2,updateOperation2]};var
|
|
283
|
+
operations:[listOperation2,updateOperation2]};var FORBIDDEN4="\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002twp user default-permission \u306F\u7D44\u7E54\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059";var PATH="/api/v2/admin/tenant/default-feature-permissions";var UPDATE_USAGE2="twp user default-permission update --feature <\u6A5F\u80FD> --level <\u30EC\u30D9\u30EB> | twp user default-permission update --feature <\u6A5F\u80FD>=<\u30EC\u30D9\u30EB> [--feature \u2026]";var SCOPE_NOTE="\u65E2\u5B9A\u306F\u3001\u3053\
|
|
284
|
+
\u308C\u304B\u3089\u4F5C\u6210\u30FB\u62DB\u5F85\u30FBSSO \u306E\u81EA\u52D5\u4F5C\u6210\u3067\u5165\u308B\u4EBA\u306B\u4ED8\u304F\u6A29\u9650\u3067\u3059\u3002\u3044\u307E\u3044\u308B\u30E6\u30FC\u30B6\u30FC\u306E\u6A29\u9650\u306F\u5909\u308F\u308A\u307E\u305B\u3093\uFF081\u4EBA\u305A\u3064\u5909\u3048\u308B\u3068\u304D\u306F twp user permission update\uFF09\u3002";async function forbiddenGuarded(work){try{return await work()}catch(err){if(err instanceof ResolveError&&err.status===403)throw new ResolveError(
|
|
285
|
+
`${FORBIDDEN4}\uFF08${err.message}\uFF09`,403);throw err}}function defaultRows(body){const levels=isRecord(body)?body["default_feature_permissions"]:void 0;const metadata=isRecord(body)?body["feature_metadata"]:void 0;if(!isRecord(levels)||!isRecord(metadata)){throw new ApiResponseError("\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\u306E\u5FDC\u7B54\u306B default_feature_permissions / feature_metadata \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
286
|
+
return Object.entries(metadata).map(([code,meta])=>{const label2=isRecord(meta)&&typeof meta["label"]==="string"?meta["label"]:code;const choices=isRecord(meta)&&Array.isArray(meta["levels"])?meta["levels"].map(String).join("/"):"";const level=levels[code];return{feature_name:label2,feature_code:code,level:typeof level==="string"?level:"(\u306A\u3057)",levels:choices}})}var listOperation3={name:"list",summary:"\u65B0\u3057\u304F\u5165\u308B\u4EBA\u306B\u4ED8\u304F\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\u3092\u4E26\u3079\u308B\uFF08\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",
|
|
287
|
+
usage:"twp user default-permission list",description:"\u6A5F\u80FD\u3054\u3068\u306B\u3001\u65E2\u5B9A\u306E\u30EC\u30D9\u30EB\uFF08level\uFF09\u3068\u53D6\u308C\u308B\u30EC\u30D9\u30EB\uFF08levels\uFF09\u30921\u884C\u305A\u3064\u51FA\u3057\u307E\u3059\u3002\n\u753B\u9762\u306E\u300C\u30C6\u30CA\u30F3\u30C8\u8A2D\u5B9A > \u8A8D\u8A3C\u9023\u643A\u300D\u306E\u300C\u30E6\u30FC\u30B6\u30FC\u4F5C\u6210\u6642\u30C7\u30D5\u30A9\u30EB\u30C8\u5229\u7528\u6A5F\u80FD\u300D\u3068\u540C\u3058\u5024\u3067\u3059\u3002\n\n"+
|
|
288
|
+
SCOPE_NOTE,forbidden:FORBIDDEN4,flags:[],async prepare(input){if(input.args.length>0)throw new UsageError(`\u4F4D\u7F6E\u5F15\u6570\u306F\u53D7\u3051\u307E\u305B\u3093: ${input.args.join(" ")}`,"twp user default-permission list");return input},plan:()=>({method:"GET",path:PATH}),summarize:body=>defaultRows(body),raw:body=>defaultRows(body)};function mergeDefaults(current,wanted){const body={...current};const changes=[];for(const item of wanted){changes.push({feature:item.feature,featureLabel:item.
|
|
289
|
+
featureLabel,from:current[item.feature]??"none",to:item.level});body[item.feature]=item.level}return{body,changes}}function revertCommand2(changes){const moved=changes.filter(change=>change.from!==change.to);if(moved.length===0)return null;return`twp user default-permission update ${moved.map(change=>`--feature ${shellQuote(`${change.feature}=${change.from}`)}`).join(" ")}`}async function prepareUpdate2(input,ctx){if(input.args.length>0){throw new UsageError(`\u4F4D\u7F6E\u5F15\u6570\u306F\u53D7\u3051\u307E\u305B\u3093\uFF08\u65E2\u5B9A\u306F\u30C6\u30CA\u30F3\u30C8\u306B1\u3064\u3067\u3059\uFF09: ${input.
|
|
290
|
+
args.join(" ")}`,UPDATE_USAGE2)}const pairs=featureLevelFlags(input,UPDATE_USAGE2);const defs=await forbiddenGuarded(()=>ctx.resolver.featurePermissions());const wanted=[];for(const pair of pairs){const def=featureDef(pair.feature,defs);const level=levelOf(pair.level,def);if(wanted.some(item=>item.feature===def.code)){throw new UsageError(`${def.label}\uFF08${def.code}\uFF09\u304C2\u56DE\u6307\u5B9A\u3055\u308C\u3066\u3044\u307E\u3059`,"1\u3064\u306E\u6A5F\u80FD\u306B\u3064\u304D --feature \u306F1\u56DE\u306B\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}
|
|
291
|
+
wanted.push({feature:def.code,featureLabel:def.label,level})}const current=await forbiddenGuarded(()=>ctx.resolver.defaultFeatureLevels());const{body,changes}=mergeDefaults(current,wanted);return withResolved(input,{body:JSON.stringify(body),changes:JSON.stringify(changes)})}function changesOf(input){return JSON.parse(requireResolved(input,"changes"))}function updatePlan(input){return{method:"PUT",path:PATH,body:JSON.parse(requireResolved(input,"body"))}}function updateBody(body){if(!isRecord(body)||
|
|
292
|
+
body["defaultUpdate"]!==true||!Array.isArray(body["changes"])){throw new ApiResponseError("\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\u306E\u5909\u66F4\u306E\u7D50\u679C\u3092\u7D44\u307F\u7ACB\u3066\u3089\u308C\u307E\u305B\u3093\u3067\u3057\u305F\uFF08\u5185\u90E8\u30A8\u30E9\u30FC\uFF09\u3002")}return body}async function runUpdate2(input,ctx){const plan=updatePlan(input);const response=await ctx.send(plan);if(!isRecord(response)||response["result"]!==true){throw new ApiResponseError("\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\u306E\u66F4\
|
|
293
|
+
\u65B0\u306E\u5FDC\u7B54\u304C\u60F3\u5B9A\u306E\u5F62\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}const saved=isRecord(response["default_feature_permissions"])?response["default_feature_permissions"]:{};const savedOf=feature=>typeof saved[feature]==="string"?saved[feature]:null;const changes=changesOf(input);const sent=plan.body;const drifted=Object.entries(sent).filter(([feature,level])=>!changes.some(change=>change.
|
|
294
|
+
feature===feature)&&savedOf(feature)!==level).map(([feature,level])=>({feature,sent:level,saved:savedOf(feature)}));return{defaultUpdate:true,changes:changes.map(change=>({...change,saved:savedOf(change.feature)})),drifted,response}}var updateOperation3={name:"update",summary:"\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\u3092\u5909\u3048\u308B\uFF08\u6307\u5B9A\u3057\u306A\u3044\u6A5F\u80FD\u306F\u3044\u307E\u306E\u5024\u306E\u307E\u307E\u30FB\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",usage:UPDATE_USAGE2,
|
|
295
|
+
description:"\u753B\u9762\u306E\u300C\u30C6\u30CA\u30F3\u30C8\u8A2D\u5B9A > \u8A8D\u8A3C\u9023\u643A\u300D\u306E\u300C\u30E6\u30FC\u30B6\u30FC\u4F5C\u6210\u6642\u30C7\u30D5\u30A9\u30EB\u30C8\u5229\u7528\u6A5F\u80FD\u300D\u3068\u540C\u3058\u5909\u66F4\u3092\u3057\u307E\u3059\uFF08\u540C\u3058 API \u3092\u4F7F\u3044\u307E\u3059\uFF09\u3002\n\u6A5F\u80FD\u306F\u30B3\u30FC\u30C9\uFF08wiki_management\uFF09\u304B\u753B\u9762\u306E\u8868\u793A\u540D\uFF08Wiki\u7BA1\u7406\uFF09\u3067\u3001\u30EC\u30D9\u30EB\u306F\u305D\u306E\u6A5F\u80FD\u304C\u53D6\u308C\u308B\u5024\u3067\u6307\u5B9A\u3057\u307E\u3059\u3002\n\u53D6\u308C\u308B\u30EC\u30D9\u30EB\u306F twp user default-permission list \u306E levels \u5217\u3067\u898B\u3089\u308C\u307E\u3059\u3002\u53D6\u308C\u306A\u3044\u7D44\u307F\u5408\u308F\u305B\u306F\u9001\u308B\u524D\u306B\u6B62\u3081\u307E\u3059\u3002\n\n twp user default-permission update --feature wiki_management --level viewer\n twp user default-permission update --feature inquiry=member --feature workflow=none\n\n\u30B5\u30FC\u30D0\u306E API \u306F\u5168\u6A5F\u80FD\u3092\u307E\u3068\u3081\u3066\u7F6E\u304D\u63DB\u3048\u308B\u305F\u3081\u3001\u3044\u307E\u306E\u65E2\u5B9A\u3092\u8AAD\u3093\u3067\u304B\u3089\u3001\u6307\u5B9A\u3057\u305F\u6A5F\u80FD\u3060\u3051\u3092\u5DEE\u3057\u66FF\u3048\u3066\u5168\u6A5F\u80FD\u3092\u9001\u308A\u307E\u3059\u3002\n\u6307\u5B9A\u3057\u306A\u304B\u3063\u305F\u6A5F\u80FD\u306E\u65E2\u5B9A\u306F\u5909\u308F\u308A\u307E\u305B\u3093\u3002\u9001\u308B\u524D\u306B\u300C\u3069\u306E\u6A5F\u80FD\u304C\u4F55\u304B\u3089\u4F55\u3078\u300D\u3092 stderr \u306B\u51FA\u3057\u307E\u3059\uFF08--dry-r\
|
|
296
|
+
un \u306F\u3053\u3053\u3067\u6B62\u307E\u308A\u3001\n\u9001\u308B\u672C\u6587\u306E\u5168\u4F53\u3092\u51FA\u3057\u307E\u3059\uFF09\u3002\u9001\u3063\u305F\u3042\u3068\u306F\u30B5\u30FC\u30D0\u304C\u4FDD\u5B58\u3057\u305F\u5024\u3092\u5168\u6A5F\u80FD\u3067\u78BA\u304B\u3081\u3001\u5143\u306B\u623B\u3059\u30B3\u30DE\u30F3\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002\n\u8AAD\u3093\u3067\u304B\u3089\u9001\u308B\u307E\u3067\u306E\u9593\u306B\u5225\u306E\u7BA1\u7406\u8005\u304C\u753B\u9762\u3067\u5909\u3048\u305F\u5024\u306F\u3001\u8AAD\u3093\u3060\u6642\u70B9\u306E\u5024\u3067\u4E0A\u66F8\u304D\u3055\u308C\u307E\u3059\uFF08\u30B5\u30FC\u30D0\u306B\u7AF6\u5408\u306E\u691C\u51FA\u306F\u3042\u308A\u307E\u305B\u3093\uFF09\u3002\n\n"+
|
|
297
|
+
SCOPE_NOTE,forbidden:FORBIDDEN4,flags:[FEATURE_FLAG,LEVEL_FLAG],prepare:prepareUpdate2,plan:updatePlan,plannedNotes:()=>["\u3044\u307E\u306E\u65E2\u5B9A\u306F GET \u6E08\u307F\u3067\u3059\uFF08\u6307\u5B9A\u3057\u306A\u304B\u3063\u305F\u6A5F\u80FD\u306F\u305D\u306E\u5024\u306E\u307E\u307E\u9001\u308A\u307E\u3059\uFF09\u3002"],async preview(input){const notes=changesOf(input).map(change=>change.from===change.to?`${change.featureLabel}\uFF08${change.feature}\uFF09: ${change.to} \u306E\u307E\u307E\uFF08\u65E2\u306B\u3053\u306E\u5024\u3067\u3059\uFF09`:
|
|
298
|
+
`${change.featureLabel}\uFF08${change.feature}\uFF09: ${change.from} \u2192 ${change.to}`);notes.push(SCOPE_NOTE);return{notes,warnings:[]}},execute:runUpdate2,summarize:body=>updateBody(body).changes.map(change=>({feature_name:change.featureLabel,feature_code:change.feature,from:change.from,to:change.saved??"(\u4E0D\u660E)"})),raw:body=>updateBody(body).changes.map(change=>({feature_code:change.feature,from_level:change.from,to_level:change.to,saved_level:change.saved})),notes(body){const notes=[];
|
|
299
|
+
const revert=revertCommand2(updateBody(body).changes);if(revert!==null)notes.push(`\u5143\u306B\u623B\u3059\u306B\u306F:
|
|
300
|
+
${revert}`);return notes},failures:body=>{const{changes,drifted}=updateBody(body);return[...changes.filter(change=>change.saved!==change.to).map(change=>({target:`${change.featureLabel}\uFF08${change.feature}\uFF09`,error:new ApiRejectedError(`${change.to} \u3092\u9001\u308A\u307E\u3057\u305F\u304C\u3001\u30B5\u30FC\u30D0\u304C\u4FDD\u5B58\u3057\u305F\u5024\u306F ${change.saved??"\uFF08\u5FDC\u7B54\u306B\u7121\u3057\uFF09"} \u3067\u3059\u3002twp user default-permission list \u3067\u78BA\u304B\u3081\u3066\u304F\u3060\u3055\u3044\u3002`)})),
|
|
301
|
+
...drifted.map(item=>({target:item.feature,error:new ApiRejectedError(`\u6307\u5B9A\u3057\u3066\u3044\u306A\u3044\u6A5F\u80FD\u306E\u65E2\u5B9A\u304C\u5909\u308F\u308A\u307E\u3057\u305F\uFF08${item.sent} \u3092\u9001\u308A\u307E\u3057\u305F\u304C\u3001\u4FDD\u5B58\u3055\u308C\u305F\u5024\u306F ${item.saved??"\uFF08\u5FDC\u7B54\u306B\u7121\u3057\uFF09"} \u3067\u3059\uFF09\u3002twp user default-permission update --feature ${shellQuote(`${item.feature}=${item.sent}`)} \u3067\u623B\u3057\u3066\u304F\u3060\u3055\u3044\u3002`)}))]}};
|
|
302
|
+
var userDefaultPermissionResource={name:"default-permission",summary:"\u65B0\u3057\u304F\u5165\u308B\u4EBA\u306B\u4ED8\u304F\u65E2\u5B9A\u306E\u6A5F\u80FD\u6A29\u9650\uFF08\u53C2\u7167\u30FB\u5909\u66F4\u3002\u65E2\u5B58\u30E6\u30FC\u30B6\u30FC\u306F\u5909\u308F\u3089\u306A\u3044\uFF09",operations:[listOperation3,updateOperation3]};var LIST_COLUMNS3=["user_id","user_name","email","employee_code","department_name","position_name","role","display_flg"];var GET_COLUMNS=["user_id","user_name","user_name_kana","email","employee_code","role","auth_type","hire_date","is_locked","display_flg","memberlist_flg","org_chart_flg","dashboard_flg"];var EMPLOYMENT_TYPES=["employee","partner"];var listPaging=envelopePaging({label:"\u30E6\u30FC\u30B6\u30FC\u4E00\u89A7"});function userObject(body){if(!isRecord(body)||typeof body["user_id"]!==
|
|
283
303
|
"string"){throw new ApiResponseError("\u30E6\u30FC\u30B6\u30FC\u8A73\u7D30\u306E\u5FDC\u7B54\u306B user_id \u304C\u3042\u308A\u307E\u305B\u3093\u3002\u63A5\u7D9A\u5148\u3092\u78BA\u8A8D\u3057\u3066\u304F\u3060\u3055\u3044\u3002")}const rest={...body};delete rest["result"];return rest}var TEXT_FIELDS=[{flag:"--name",key:"user_name",label:"\u6C0F\u540D",maxChars:255,summary:"\u6C0F\u540D",placeholder:"<\u6C0F\u540D>"},{flag:"--kana",key:"user_name_kana",label:"\u30D5\u30EA\u30AC\u30CA",maxChars:255,
|
|
284
304
|
summary:"\u6C0F\u540D\u306E\u30D5\u30EA\u30AC\u30CA",placeholder:"<\u30D5\u30EA\u30AC\u30CA>"},{flag:"--email",key:"login_id",label:"\u30ED\u30B0\u30A4\u30F3ID",maxChars:255,summary:"\u30ED\u30B0\u30A4\u30F3ID\uFF08\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9\uFF09",placeholder:"<\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9>"},{flag:"--employee-code",key:"employee_code",label:"\u793E\u54E1\u756A\u53F7",maxChars:50,summary:"\u793E\u54E1\u756A\u53F7",placeholder:"<\u793E\u54E1\u756A\u53F7>"},{flag:"--\
|
|
285
305
|
two-factor-tel",key:"two_factor_tel",label:"\u4E8C\u6BB5\u968E\u8A8D\u8A3C\u7528\u306E\u96FB\u8A71\u756A\u53F7",maxChars:20,summary:"\u4E8C\u6BB5\u968E\u8A8D\u8A3C\uFF08SMS\uFF09\u306E\u9001\u308A\u5148\u96FB\u8A71\u756A\u53F7",placeholder:"<\u96FB\u8A71\u756A\u53F7>"},{flag:"--employee-identifier",key:"employee_identifier",label:"\u793E\u54E1\u8B58\u5225\u5B50",maxChars:255,summary:"\u793E\u54E1\u8B58\u5225\u5B50\uFF08\u4EBA\u6750\u60C5\u5831\uFF09",placeholder:"<\u8B58\u5225\u5B50>"},{flag:"--\
|
|
@@ -309,6 +329,7 @@ key]=value}return body}function writeAck2(body,label2){if(!isRecord(body)||body[
|
|
|
309
329
|
usage:"twp user create --name <\u6C0F\u540D> --email <\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9> --password-file <\u30D1\u30B9|-> [--role admin|user] [--kana <\u30D5\u30EA\u30AC\u30CA>] [--hire-date <YYYY-MM-DD>] [--employee-code <\u793E\u54E1\u756A\u53F7>] [--two-factor none|email|sms] [--punch-correction true|false] [--display true|false] \u2026",description:`--name / --email / --password-file \u304C\u5FC5\u9808\u3067\u3059\u3002--role \u3092\u7701\u304F\u3068\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\uFF08user\uFF09\u3067\u4F5C\u6210\u3057\u307E\u3059\u3002
|
|
310
330
|
\u8868\u793A\u30D5\u30E9\u30B0\u3092\u7701\u304F\u3068\u3001\u30B5\u30FC\u30D0\u306E\u65E2\u5B9A\uFF08\u3059\u3079\u3066 true\uFF1D\u8868\u793A\u3059\u308B\uFF09\u3067\u4F5C\u6210\u3057\u307E\u3059\u3002
|
|
311
331
|
\u6A5F\u80FD\u6A29\u9650\u306F\u30C6\u30CA\u30F3\u30C8\u306E\u65E2\u5B9A\u3067\u4ED8\u4E0E\u3055\u308C\u307E\u3059\uFF08\u30E9\u30A4\u30BB\u30F3\u30B9\u306E\u7A7A\u304D\u304C\u8DB3\u308A\u306A\u3044\u6A5F\u80FD\u306F\u4ED8\u4E0E\u3055\u308C\u305A\u3001stderr \u306B\u51FA\u307E\u3059\uFF09\u3002
|
|
332
|
+
\u65E2\u5B9A\u306F twp user default-permission list \u3067\u898B\u3089\u308C\u3001update \u3067\u5909\u3048\u3089\u308C\u307E\u3059\u3002
|
|
312
333
|
|
|
313
334
|
${PASSWORD_HELP}
|
|
314
335
|
|
|
@@ -320,7 +341,7 @@ ${PROFILE_HELP}
|
|
|
320
341
|
`create \u306F\u4F4D\u7F6E\u5F15\u6570\u3092\u53D6\u308A\u307E\u305B\u3093: ${input.args.join(" ")}`,"twp user create help")}const body=userFields(input);for(const[flag,key]of[["--name","user_name"],["--email","login_id"]]){if(body[key]===void 0)throw new UsageError(`${flag} \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`,"twp user create help")}if(body["two_factor_authentication_type"]===TWO_FACTOR_TYPES["sms"]&&body["two_factor_tel"]===void 0){throw new UsageError("--two-factor sms \u306B\u306F \
|
|
321
342
|
--two-factor-tel \u3082\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044","\u4E8C\u6BB5\u968E\u8A8D\u8A3C\u306E\u30B3\u30FC\u30C9\u3092 SMS \u3067\u9001\u308B\u96FB\u8A71\u756A\u53F7\u3067\u3059\u3002")}if(!input.flags.has(PASSWORD_FILE_FLAG.name)){throw new UsageError("--password-file \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044",PASSWORD_HINT)}const password=await readPassword(input,"twp user create help");return withResolved(input,{password})},plan(input){const body=userFields(input);
|
|
322
343
|
if(body["type"]===void 0)body["type"]=ROLE_TO_TYPE["user"];return{method:"POST",path:"/api/v2/admin/users",body:{...body,password:requireResolved(input,"password")}}},plannedNotes:input=>input.flags.has("--role")?[]:["--role \u672A\u6307\u5B9A\u306E\u305F\u3081\u3001\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\uFF08user\uFF09\u3067\u4F5C\u6210\u3057\u307E\u3059\u3002"],summarize:body=>pick(writeAck2(body,"\u30E6\u30FC\u30B6\u30FC\u4F5C\u6210"),["user_id","message"]),raw:body=>writeAck2(body,"\u30E6\u30FC\u30B6\u30FC\u4F5C\u6210"),
|
|
323
|
-
notes:body=>licenseNotes(body)};var UPDATE_FLAGS=[...FIELD_FLAGS,AUTH_TYPE_FLAG,CLEAR_FLAG,USER_REF_FLAG];var
|
|
344
|
+
notes:body=>licenseNotes(body)};var UPDATE_FLAGS=[...FIELD_FLAGS,AUTH_TYPE_FLAG,CLEAR_FLAG,USER_REF_FLAG];var updateOperation4={name:"update",summary:"\u30E6\u30FC\u30B6\u30FC\u3092\u66F4\u65B0\u3059\u308B\uFF08\u5931\u52B9\u3092\u542B\u3080\u30FB\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",usage:"twp user update <\u30E6\u30FC\u30B6\u30FC> [--auth-type all|password|oauth|disabled] [--display true|false] [--memberlist true|false] [--org-chart true|false] [--dashboard true|false] [--name <\u6C0F\u540D>] [--two-factor none\
|
|
324
345
|
|email|sms] [--clear <\u9805\u76EE>] \u2026",description:`\u6307\u5B9A\u3057\u305F\u9805\u76EE\u3060\u3051\u3092\u5909\u66F4\u3057\u307E\u3059\uFF08\u6307\u5B9A\u3057\u306A\u304B\u3063\u305F\u9805\u76EE\u306F\u5909\u308F\u308A\u307E\u305B\u3093\uFF09\u3002
|
|
325
346
|
\u5909\u66F4\u3059\u308B\u9805\u76EE\u30921\u3064\u3082\u6307\u5B9A\u3057\u306A\u3044\u3068\u30A8\u30E9\u30FC\u306B\u306A\u308A\u307E\u3059\u3002
|
|
326
347
|
\u5024\u3092\u6D88\u3059\u3068\u304D\u306F --clear <\u9805\u76EE> \u3092\u4F7F\u3044\u307E\u3059\uFF08${Object.keys(CLEARABLE).join(" / ")}\u30FB\u8907\u6570\u56DE\u6307\u5B9A\u3067\u304D\u308B\uFF09\u3002
|
|
@@ -365,4 +386,4 @@ input.flags,"--employment"),include_hidden:input.flags.has("--include-hidden")?"
|
|
|
365
386
|
v\uFF09\u306B\u306F\u500B\u4EBA\u9023\u7D61\u5148\u3092\u51FA\u3057\u307E\u305B\u3093\u3002--output json \u306F API \u304C\u8FD4\u3059\u5168\u30D5\u30A3\u30FC\u30EB\u30C9\u3092\u51FA\u3057\u307E\u3059\u3002",forbidden:"\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002twp user get \u306F\u7D44\u7E54\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059",flags:[USER_REF_FLAG],prepare:(input,ctx)=>prepareUser(input,ctx,"twp user get help"),plan:input=>({method:"\
|
|
366
387
|
GET",path:`/api/v2/admin/users/${userPath(input)}`}),summarize:body=>pick(userObject(body),GET_COLUMNS),raw:body=>userObject(body)},{name:"projects",summary:"\u6307\u5B9A\u3057\u305F\u30E6\u30FC\u30B6\u30FC\u304C\u53C2\u753B\u3057\u3066\u3044\u308B\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u3092\u4E00\u89A7\u3059\u308B\uFF08\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u307F\uFF09",usage:"twp user projects <\u30E6\u30FC\u30B6\u30FC>",description:"GET /api/v2/admin/users/{id}/projects\u3002\u3053\u306E API \u306F\u30DA\u30FC\u30B8\u30F3\u30B0\u3092\u6301\u305F\u305A\u3001\u5E38\u306B\u5168\u4EF6\u3092\u8FD4\u3057\u307E\
|
|
367
388
|
\u3059\u3002\nmember_start_date / member_end_date \u306F\u305D\u306E\u30E6\u30FC\u30B6\u30FC\u306E\u53C2\u753B\u671F\u9593\u3067\u3059\uFF08start_date / end_date \u306F\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306E\u671F\u9593\uFF09\u3002\n\u81EA\u5206\u306E\u30D7\u30ED\u30B8\u30A7\u30AF\u30C8\u306F\u7D44\u7E54\u7BA1\u7406\u8005\u3067\u306A\u304F\u3066\u3082 twp project mine \u3067\u8AAD\u3081\u307E\u3059\u3002\n\n"+USER_REF_HELP,forbidden:"\u7D44\u7E54\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002twp user projects \u306F\u7D44\u7E54\u7BA1\u7406\u8005\u3060\u3051\u304C\u4F7F\u3048\u307E\u3059\uFF08\u81EA\u5206\u306E\u5206\u306F twp pro\
|
|
368
|
-
ject mine\uFF09",flags:[USER_REF_FLAG],prepare:(input,ctx)=>prepareUser(input,ctx,"twp user projects help"),plan:input=>({method:"GET",path:`/api/v2/admin/users/${userPath(input,"/projects")}`}),summarize:body=>assignedProjectItems(body).map(row=>pick(row,ASSIGNED_PROJECT_COLUMNS)),raw:body=>assignedProjectItems(body)},createOperation2,
|
|
389
|
+
ject mine\uFF09",flags:[USER_REF_FLAG],prepare:(input,ctx)=>prepareUser(input,ctx,"twp user projects help"),plan:input=>({method:"GET",path:`/api/v2/admin/users/${userPath(input,"/projects")}`}),summarize:body=>assignedProjectItems(body).map(row=>pick(row,ASSIGNED_PROJECT_COLUMNS)),raw:body=>assignedProjectItems(body)},createOperation2,updateOperation4,unlockOperation,exportOperation,...userHrOperations],subresources:[userAssignmentResource,userInviteResource,userPermissionResource,userDefaultPermissionResource]};export{userDomain};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{booleanQuery,cacheNote,createFlags,fieldBody,hasAnyField,idSegment,masterItem,masterRows,referencedDeleteGuidance,targetId,updateFlags}from"./chunk-
|
|
3
|
+
import{booleanQuery,cacheNote,createFlags,fieldBody,hasAnyField,idSegment,masterItem,masterRows,referencedDeleteGuidance,targetId,updateFlags}from"./chunk-45WIRMGL.js";import"./chunk-JJSBBWJ5.js";import{USER_CONTRACT_TYPES_PATH}from"./chunk-4DOPQ74T.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-MMVXE2CJ.js";import"./chunk-II5RVJQN.js";import"./chunk-MI6HVYR2.js";import{withResolved}from"./chunk-PS5QFKHB.js";import{
|
|
4
4
|
acknowledgement,pick}from"./chunk-3ZRMMBP5.js";import{UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var NAME="user-contract-type";var LABEL="\u5951\u7D04\u5F62\u614B";var ITEM_KEY="contract_type";var CALCULATION_TYPES=["salary_based","salary_executive","salary_manager","hourly_based","contract_based","other_exempt"];var FIELDS=[{kind:"text",flag:"--name",key:"name",label:`${LABEL}\u540D`,maxChars:255,summary:`${LABEL}\u540D`},{kind:"text",flag:"--code",key:"code",label:`${LABEL}\u30B3\u30FC\u30C9`,maxChars:50,summary:`${LABEL}\u30B3\u30FC\u30C9\uFF08\u4EFB\u610F\u30FB\u30C6\u30CA\u30F3\u30C8\u5185\u3067\u4E00\u610F\uFF09`},
|
|
5
5
|
{kind:"enum",flag:"--calculation-type",key:"calculation_type",values:CALCULATION_TYPES,summary:"\u8A08\u7B97\u533A\u5206\uFF08salary_based: \u4E00\u822C\u5F93\u696D\u54E1 / salary_executive: \u5F79\u54E1 / salary_manager: \u7BA1\u7406\u76E3\u7763\u8005 / hourly_based: \u6642\u7D66\u5236 / contract_based: \u696D\u52D9\u59D4\u8A17 / other_exempt: \u8A08\u7B97\u5BFE\u8C61\u5916\uFF09"},{kind:"integer",flag:"--monthly-hours",key:"default_monthly_hours",label:"\u6708\u9593\u6240\u5B9A\u6642\u9593",min:1,
|
|
6
6
|
max:744,summary:"\u6708\u9593\u6240\u5B9A\u6642\u9593\uFF081\u301C744\uFF09"},{kind:"number",flag:"--daily-hours",key:"default_daily_hours",label:"1\u65E5\u306E\u6240\u5B9A\u6642\u9593",min:1,max:24,summary:"1\u65E5\u306E\u6240\u5B9A\u6642\u9593\uFF081\u301C24\u30FB\u5C0F\u6570\u53EF\uFF09"},{kind:"number",flag:"--bonus-months",key:"bonus_months_default",label:"\u8CDE\u4E0E\u6708\u6570",min:0,max:24,summary:"\u8CDE\u4E0E\u6708\u6570\u306E\u65E2\u5B9A\uFF080\u301C24\u30FB\u5C0F\u6570\u53EF\uFF09"},
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{USER_REF_HELP}from"./chunk-UVCJXHWN.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{USER_GROUPS_PATH,USER_GROUP_LIMIT}from"./chunk-
|
|
3
|
+
import{USER_REF_HELP}from"./chunk-UVCJXHWN.js";import{repeatedValues}from"./chunk-RX5HWI4L.js";import{USER_GROUPS_PATH,USER_GROUP_LIMIT}from"./chunk-4DOPQ74T.js";import{UUID_RE,isSafePathSegment}from"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-MMVXE2CJ.js";import"./chunk-II5RVJQN.js";import{nonEmpty}from"./chunk-MI6HVYR2.js";import{requireResolved,singleRef,withResolved}from"./chunk-PS5QFKHB.js";import{isRecord,pick}from"./chunk-3ZRMMBP5.js";
|
|
4
4
|
import{ApiResponseError,UsageError}from"./chunk-VFPY2A23.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";var LABEL="\u30E6\u30FC\u30B6\u30FC\u30B0\u30EB\u30FC\u30D7";var LIST_COLUMNS=["id","usergroup_name","display_type","select_type","sort","updated"];var GET_COLUMNS=["id","usergroup_name","display_type","select_type","sort","member_count","members","updated"];var MEMBER_COLUMNS=["user_id","user_name","email","code"];var DISPLAY_VALUES={visible:1,hidden:0};var SELECT_VALUES={all:1,"admin-only":0};var FORBIDDEN="\u7BA1\u7406\u8005\u306E\u6A29\u9650\u304C\u5FC5\u8981\u3067\u3059\u3002\u30E6\u30FC\u30B6\u30FC\u30B0\u30EB\u30FC\u30D7\u306E\u8A73\u7D30\u30FB\u4F5C\u6210\u30FB\u66F4\u65B0\u306F\u7BA1\u7406\u8005\u3060\u3051\u304C\u884C\u3048\u307E\u3059";
|
|
5
5
|
var REF_HELP="<\u30B0\u30EB\u30FC\u30D7> \u306F\u30B0\u30EB\u30FC\u30D7\u540D\u304B ID \u3067\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\u30B0\u30EB\u30FC\u30D7\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";var KIND_HELP="\
|
|
6
6
|
display_type: 1\uFF1D\u8868\u793A / 0\uFF1D\u975E\u8868\u793A\uFF08\u9078\u629E\u80A2\u306B\u51FA\u3055\u306A\u3044\uFF09\u3002select_type: 1\uFF1D\u5168\u54E1\uFF08\u7BA1\u7406\u8005\u30FB\u4E00\u822C\u30E6\u30FC\u30B6\u30FC\u304C\u9078\u3079\u308B\uFF09/ 0\uFF1D\u7BA1\u7406\u8005\u306E\u307F\u3002";var DELETED_USERS_NOTE="\u524A\u9664\u6E08\u307F\u306E\u30E6\u30FC\u30B6\u30FC\u306E\u6240\u5C5E\u306F\u3001\u30B5\u30FC\u30D0\u304C\u8A73\u7D30\u306B\u8FD4\u3055\u306A\u3044\u305F\u3081\u9001\u4FE1\u6642\u306B\u6D88\u3048\u307E\u3059\uFF08\u753B\u9762\u3067\u4FDD\u5B58\u3057\u305F\u3068\u304D\u3068\u540C\u3058\uFF09\u3002";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{SCHEDULE_HELP,parseSchedule,readRunStatus,workerAgentDomain}from"./chunk-
|
|
3
|
+
import{SCHEDULE_HELP,parseSchedule,readRunStatus,workerAgentDomain}from"./chunk-EOXGQHZA.js";import"./chunk-WVCEKC7V.js";import"./chunk-A3VGBVQP.js";import"./chunk-W4NLJ2YK.js";import"./chunk-5TKHN3A5.js";import"./chunk-RX5HWI4L.js";import"./chunk-4DOPQ74T.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";import"./chunk-MMVXE2CJ.js";import"./chunk-II5RVJQN.js";import"./chunk-MI6HVYR2.js";import"./chunk-PS5QFKHB.js";
|
|
4
4
|
import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{SCHEDULE_HELP,parseSchedule,readRunStatus,workerAgentDomain};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
2
|
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-
|
|
4
|
-
import"./chunk-
|
|
3
|
+
import{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance}from"./chunk-O6GAIXHJ.js";import"./chunk-MZB4KA26.js";import"./chunk-DMMSNDDD.js";import"./chunk-4557EX6E.js";import"./chunk-JJSBBWJ5.js";import"./chunk-A3VGBVQP.js";import"./chunk-W4NLJ2YK.js";import"./chunk-5TKHN3A5.js";import"./chunk-RX5HWI4L.js";import"./chunk-4DOPQ74T.js";import"./chunk-HVZUXLQ4.js";import"./chunk-JA5A6UJ2.js";
|
|
4
|
+
import"./chunk-MMVXE2CJ.js";import"./chunk-II5RVJQN.js";import"./chunk-MI6HVYR2.js";import"./chunk-PS5QFKHB.js";import"./chunk-3ZRMMBP5.js";import"./chunk-VFPY2A23.js";import"./chunk-XNLIEUAW.js";import"./chunk-J7QYPKVK.js";import"./chunk-EDF4U5BT.js";import"./chunk-RZVI6PMW.js";import"./chunk-QQRJLH6B.js";import"./chunk-NHYMHCAT.js";import"./chunk-VSJBJXZO.js";export{applyInstancePlan,createInstancePlan,formColumns,parseInstanceContent,workflowDomain,writtenInstance};
|
package/package.json
CHANGED
package/dist/chunk-EOXTDZTA.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{splitFlagToken}from"./chunk-QQRJLH6B.js";var BUILTIN_COMMANDS=["login","logout","whoami","update","task-loop"];var TASK_LOOP_ACTIONS=["run","status","stop","schedule","setup","charter","skill","settings","plan","capacity","runner"];var VALUE_FLAGS=new Set(["-p","--print","--profile","--tenant","--mode","--permission-mode","--model","--allowed-tools","--disallowed-tools","--project","--engine","--interval","--max-cycles","--ai","--workspace","--ai-config-file","--now","--counts","--gate","--file","--out","--revision","--dir","--from","-\
|
|
4
|
-
-to","--config","--output","--query"]);var BOOLEAN_FLAGS=new Set(["-h","--help","-v","--version","--no-tui","--doctor","--password","--token","--no-browser","--safe","--daemon","--force-runner","--force","--drain","--yes","-y","--no-ai-config-file","--verbose","--all","--empty","--check","--include-stopped","--dry-run","--debug","--refresh"]);function dispatch(argv,limit=2){const tokens=[];const indexes=[];let truncated=false;for(let i=0;i<argv.length;i++){const arg=argv[i];if(arg===void 0)continue;
|
|
5
|
-
if(arg.startsWith("-")&&arg!=="-"){const{name,value:inline}=splitFlagToken(arg);if(BOOLEAN_FLAGS.has(name)){if(inline!==void 0){truncated=true;break}continue}if(VALUE_FLAGS.has(name)){if(inline!==void 0)continue;const next=argv[i+1];if(next!==void 0&&(!next.startsWith("-")||next==="-"))i++;continue}truncated=true;break}if(arg===""||arg==="-")continue;if(tokens.length>=limit)break;tokens.push(arg);indexes.push(i)}return{tokens,indexes,truncated}}var TASK_LOOP_QUEUE_ACTIONS=["item","history","plan\
|
|
6
|
-
-history"];var QUEUE_DOMAIN="agent-loop";function rewriteQueueCommand(argv){const{tokens,indexes}=dispatch(argv);const[first,second]=tokens;if(first===QUEUE_DOMAIN||first==="help"&&second===QUEUE_DOMAIN)return{argv,moved:QUEUE_DOMAIN};const[firstIndex,secondIndex]=indexes;if(first!=="task-loop"||second===void 0||firstIndex===void 0||secondIndex===void 0||!TASK_LOOP_QUEUE_ACTIONS.includes(second)){return{argv}}const next=[...argv];next[firstIndex]=QUEUE_DOMAIN;if(second==="item")next.splice(secondIndex,
|
|
7
|
-
1);return{argv:next}}var MOVED_QUEUE_COMMAND_MESSAGE=`\`twp agent-loop\` \u306F \`twp task-loop\` \u306B\u7D71\u5408\u3057\u307E\u3057\u305F\u3002\u6B21\u306E\u3088\u3046\u306B\u6253\u3063\u3066\u304F\u3060\u3055\u3044:
|
|
8
|
-
twp agent-loop <\u64CD\u4F5C> ... \u2192 twp task-loop item <\u64CD\u4F5C> ...
|
|
9
|
-
twp agent-loop history list ... \u2192 twp task-loop history list ...
|
|
10
|
-
twp agent-loop plan-history list ... \u2192 twp task-loop plan-history list ...
|
|
11
|
-
\u8A73\u3057\u304F\u306F twp task-loop item help
|
|
12
|
-
`;function isBuiltin(token){return token!==void 0&&BUILTIN_COMMANDS.includes(token)}function isTaskLoopAction(token){return token!==void 0&&TASK_LOOP_ACTIONS.includes(token)}function resolveRoute(result){const{tokens,indexes}=result;const[first,second]=tokens;const firstIndex=indexes[0];if(first===void 0||firstIndex===void 0)return{kind:"none",consumed:[]};const consumed=[firstIndex];const secondIndex=indexes[1];if(isBuiltin(first)){if(first==="task-loop"&&isTaskLoopAction(second)){if(secondIndex!==
|
|
13
|
-
void 0)consumed.push(secondIndex);return{kind:"builtin",command:first,action:second,consumed}}return{kind:"builtin",command:first,...first==="task-loop"?{action:"run"}:{},consumed}}if(second!==void 0&&secondIndex!==void 0)consumed.push(secondIndex);return{kind:"domain",domain:first,...second!==void 0?{operation:second}:{},consumed}}export{BUILTIN_COMMANDS,TASK_LOOP_ACTIONS,VALUE_FLAGS,BOOLEAN_FLAGS,dispatch,TASK_LOOP_QUEUE_ACTIONS,QUEUE_DOMAIN,rewriteQueueCommand,MOVED_QUEUE_COMMAND_MESSAGE,resolveRoute};
|
package/dist/chunk-ISLZWSHN.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{DEFAULT_INTERVAL_SEC}from"./chunk-6EQLA56A.js";import{CHAIN_KEYS,reloadAiConfig}from"./chunk-FABDZBDZ.js";import{describeError}from"./chunk-UZUV5FYG.js";import{isPrivateProjectId}from"./chunk-RMFLTSOV.js";import{stripTerminalControls}from"./chunk-NHYMHCAT.js";import fs from"fs";import path from"path";var PROMPT_KEYS=["charter","charter_prefix","charter_suffix","plan_preamble","step_budget","non_interactive_note","safe_mode_note"];function parseServerSettings(res){const json=res.json;if(json===null||typeof json!=="object"||Array.isArray(json))return null;const top=json;const data=top["data"];const b=data!==null&&typeof data==="object"&&!Array.isArray(data)&&"revision"in data?data:top;const revision=b["revision"];if(typeof revision!=="number"||!Number.isInteger(revision)||revision<0)return null;
|
|
4
|
-
const rawAi=b["ai"];const ai=rawAi!==null&&typeof rawAi==="object"&&!Array.isArray(rawAi)?Object.fromEntries(Object.entries(rawAi).filter(([,v])=>v!==null&&v!==void 0)):{};const prompts={};const rawPrompts=b["prompts"];if(rawPrompts!==null&&typeof rawPrompts==="object"&&!Array.isArray(rawPrompts)){for(const key of PROMPT_KEYS){const v=rawPrompts[key];if(typeof v==="string")prompts[key]=v}}const rawLoop=b["loop"];const rawInterval=rawLoop!==null&&typeof rawLoop==="object"&&!Array.isArray(rawLoop)?
|
|
5
|
-
rawLoop["interval_sec"]:void 0;const intervalSec=typeof rawInterval==="number"&&Number.isInteger(rawInterval)&&rawInterval>0?rawInterval:null;const rawOutcomes=b["outcomes"];const outcomeSkills=Array.isArray(rawOutcomes)?[...new Set(rawOutcomes.map(r=>r!==null&&typeof r==="object"?r["skill"]:void 0).filter(v=>typeof v==="string"&&v.trim()!==""))]:[];return{revision,ai,prompts,intervalSec,outcomeSkills}}function formatConfigHash(aiHash,revision,ai,charter){return`${aiHash};r=${revision};ai=${ai};\
|
|
6
|
-
charter=${charter}`}function renderStepBudget(template,vars){return template.replaceAll("{timeout_min}",String(vars.timeoutMin)).replaceAll("{soft_min}",String(vars.softMin)).replaceAll("{wrap_up_min}",String(vars.wrapUpMin))}var LoopSettingsApplier=class{constructor(deps){this.deps=deps}deps;last=null;lastWarning="";lastAiWarning="";lastSummary="";serverAiApplied=false;lastSafeWarning="";lastInterval="";async apply(){const{config,log}=this.deps;const outcome=await this.fetch();const warning=outcome.
|
|
7
|
-
warning??"";if(warning!==""&&warning!==this.lastWarning)log(` \u26A0\uFE0F ${warning}`);else if(warning===""&&this.lastWarning!=="")log("\u30EB\u30FC\u30D7\u8A2D\u5B9A\u3092\u30B5\u30FC\u30D0\u304B\u3089\u518D\u3073\u53D6\u5F97\u3067\u304D\u308B\u3088\u3046\u306B\u306A\u308A\u307E\u3057\u305F");this.lastWarning=warning;const settings=outcome.settings;config.serverPrompts=settings?.prompts??{};config.outcomeSkills=settings?.outcomeSkills??[];const safeNote=config.serverPrompts.safe_mode_note;const safeWarning=config.
|
|
8
|
-
safeMode&&safeNote!==void 0?safeNote===""?"\u5B89\u5168\u30E2\u30FC\u30C9\u3067\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059\u304C\u3001\u30B5\u30FC\u30D0\u306E\u30EB\u30FC\u30D7\u8A2D\u5B9A\u304C\u5B89\u5168\u30E2\u30FC\u30C9\u306E\u6CE8\u8A18\u3092\u7A7A\u306B\u3057\u3066\u3044\u307E\u3059\uFF08\u672C\u756A\u30EA\u30EA\u30FC\u30B9\u7981\u6B62\u306E\u6307\u793A\u304C\u30D7\u30ED\u30F3\u30D7\u30C8\u306B\u8F09\u308A\u307E\u305B\u3093\uFF09":"\u5B89\u5168\u30E2\u30FC\u30C9\u3067\u8D77\u52D5\u3057\u3066\u3044\u307E\u3059\u3002\u5B89\u5168\u30E2\u30FC\u30C9\u306E\u6CE8\u8A18\u306F\u30B5\u30FC\u30D0\u306E\u30EB\u30FC\u30D7\u8A2D\u5B9A\u306E\u6587\u9762\u306B\u5DEE\u3057\u66FF\u308F\u3063\u3066\u3044\u307E\u3059":
|
|
9
|
-
"";if(safeWarning!==""&&safeWarning!==this.lastSafeWarning)log(` \u26A0\uFE0F ${safeWarning}`);this.lastSafeWarning=safeWarning;const serverAi=settings!==null&&Object.keys(settings.ai).length>0?settings.ai:null;const layer=serverAi??(this.serverAiApplied?{}:null);const r=reloadAiConfig(config.ai,config.aiSource.inline,config.aiSource.file,config.workspace,layer);if(r.status!=="kept"||layer!==null)this.serverAiApplied=serverAi!==null;const aiWarning=r.warnings.join("\n");if(aiWarning!==""&&aiWarning!==
|
|
10
|
-
this.lastAiWarning){for(const w of r.warnings)log(` \u26A0\uFE0F ${w}`)}else if(aiWarning===""&&this.lastAiWarning!==""&&r.status!=="skipped"){log("AI \u5272\u5F53\u30D5\u30A1\u30A4\u30EB\u3092\u518D\u3073\u8AAD\u3081\u308B\u3088\u3046\u306B\u306A\u308A\u307E\u3057\u305F")}this.lastAiWarning=aiWarning;if(r.status==="updated"){log(r.hashBefore===r.hashAfter?`AI \u5272\u5F53\u306E\u5909\u66F4\u3092\u53CD\u6620\u3057\u307E\u3057\u305F\uFF08AI\u5272\u5F53\u30CF\u30C3\u30B7\u30E5 ${r.hashAfter} \u306F\u4E0D\u5909\
|
|
11
|
-
\uFF1D\u9396\u304B\u30B3\u30E1\u30F3\u30C8\u3060\u3051\u306E\u5909\u66F4\uFF09`:`AI \u5272\u5F53\u306E\u5909\u66F4\u3092\u53CD\u6620\u3057\u307E\u3057\u305F\uFF08AI\u5272\u5F53\u30CF\u30C3\u30B7\u30E5 ${r.hashBefore} \u2192 ${r.hashAfter}\uFF09`)}const fromServer=outcome.source==="cached"?"cached":"server";this.applyInterval(settings,fromServer);const inline=config.aiSource.inline;const effectiveServerKeys=serverAi===null?[]:Object.keys(serverAi).filter(k=>!(CHAIN_KEYS.includes(k)&&inline!==void 0&&
|
|
12
|
-
k in inline));const aiOrigin=effectiveServerKeys.length>0?fromServer:inline!==void 0&&Object.keys(inline).length>0||config.ai.fileLayer!==null?"local":"builtin";const charterOrigin=this.charterOrigin(settings,fromServer);const revision=settings?.revision??0;config.configHash=formatConfigHash(config.ai.hash(),revision,aiOrigin,charterOrigin);const serverPromptKeys=Object.keys(config.serverPrompts);const summary=`\u30EB\u30FC\u30D7\u8A2D\u5B9A: ${settings===null?"\u30B5\u30FC\u30D0\u5024\u306A\u3057":
|
|
13
|
-
`${outcome.source==="cached"?"\u76F4\u524D\u306B\u53D6\u5F97\u3057\u305F\u30B5\u30FC\u30D0\u5024":"\u30B5\u30FC\u30D0"} revision ${revision}`}\uFF08AI\u5272\u5F53=${aiOrigin}${effectiveServerKeys.length>0?`\u30FB\u30B5\u30FC\u30D0 ${effectiveServerKeys.length}\u30AD\u30FC`:""} \uFF0F \u61B2\u7AE0=${charterOrigin} \uFF0F \u30B5\u30FC\u30D0\u306E\u6587\u9762=${serverPromptKeys.length>0?serverPromptKeys.join(","):"\u306A\u3057"}\uFF09`;if(summary!==this.lastSummary)log(summary);this.lastSummary=summary}applyInterval(settings,fromServer){
|
|
14
|
-
const{config,log}=this.deps;if(config.intervalSource==="cli")return;const serverSec=settings?.intervalSec??null;const source=serverSec!==null?fromServer:"default";config.intervalSec=serverSec??DEFAULT_INTERVAL_SEC;config.intervalSource=source;const line=`INTERVAL: ${config.intervalSec}s\uFF08\u53D6\u5F97\u5143: ${source}\uFF09`;if(line!==this.lastInterval)log(` ${line}`);this.lastInterval=line}charterOrigin(settings,fromServer){const{config}=this.deps;if(!config.charterEnabled)return"off";if(settings!==
|
|
15
|
-
null&&settings.prompts.charter!==void 0)return fromServer;const file=config.charterFile;if(file===null||file.trim()==="")return"builtin";const resolved=path.isAbsolute(file)?file:path.resolve(config.workspace,file);try{fs.accessSync(resolved,fs.constants.R_OK);return fs.statSync(resolved).isFile()?"local":"builtin"}catch{return"builtin"}}async fetch(){if(isPrivateProjectId(this.deps.config.projectId??""))return{settings:null,source:"none",warning:null};const res=await this.deps.api.request("GET",
|
|
16
|
-
"/settings");const parsed=res.ok?parseServerSettings(res):null;if(parsed!==null){this.last=parsed;return{settings:parsed,source:"server",warning:null}}const transient=res.status===null||res.status>=500||res.ok;const reason=stripTerminalControls(res.ok?`\u5FDC\u7B54\u3092\u89E3\u91C8\u3067\u304D\u307E\u305B\u3093\uFF08\u5148\u982D: ${res.raw.slice(0,120)}\uFF09`:describeError(res));if(transient&&this.last!==null){return{settings:this.last,source:"cached",warning:`\u30EB\u30FC\u30D7\u8A2D\u5B9A\u3092\u30B5\u30FC\u30D0\u304B\u3089\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\uFF08${reason}\
|
|
17
|
-
\uFF09\u3002\u76F4\u524D\u306B\u53D6\u5F97\u3057\u305F revision ${this.last.revision} \u3067\u8D70\u308A\u307E\u3059`}}return{settings:null,source:"none",warning:`\u30EB\u30FC\u30D7\u8A2D\u5B9A\u3092\u30B5\u30FC\u30D0\u304B\u3089\u53D6\u5F97\u3067\u304D\u307E\u305B\u3093\uFF08${reason}\uFF09\u3002\u30ED\u30FC\u30AB\u30EB\u8A2D\u5B9A\uFF08ai_config_file / charter_file\uFF09\u3068\u7D44\u307F\u8FBC\u307F\u65E2\u5B9A\u3067\u8D70\u308A\u307E\u3059`}}};export{PROMPT_KEYS,parseServerSettings,formatConfigHash,renderStepBudget,LoopSettingsApplier};
|
package/dist/chunk-JQQP7JLQ.js
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
var DOMAIN_NAMES=["agent","agent-loop","ai-review-reason","analysis","announcement","attendance","audit-log","backlog","budget","business-hours","business-place","company","contract","customer","department","deposit","estimate","evaluation","expense","faq","fiscal-year","goal-sheet","holiday","inquiry","invoice","job-title","knowledge","leave","license","login-history","media","meeting","note","notification","onedrive","outlook","payee","position","project","prospect","purchase","qualification",
|
|
4
|
-
"receivable","redmine","report","role-template","rounding-setting","seal-impression","search","segment","shift","skill","staffing-board","storage","supplier-payment","support","task","teams","user","user-contract-type","user-group","wiki","workchange","worker-agent","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};
|
package/dist/chunk-LGNYEROA.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
var LOADERS={agent:async()=>(await import("./agent-SX7Z5BVN.js")).agentDomain,"agent-loop":async()=>(await import("./agent-loop-QV7WHT7B.js")).agentLoopDomain,"ai-review-reason":async()=>(await import("./sales-ai-review-KYYUF5HG.js")).aiReviewReasonDomain,analysis:async()=>(await import("./analysis-6MPLKJUS.js")).analysisDomain,announcement:async()=>(await import("./announcement-4ZK63ONY.js")).announcementDomain,attendance:async()=>(await import("./attendance-correct-X67ITW3J.js")).attendanceDomainWithRecords,
|
|
4
|
-
"audit-log":async()=>(await import("./audit-log-ZGK7IVLD.js")).auditLogDomain,backlog:async()=>(await import("./backlog-ZHON6HED.js")).backlogDomain,budget:async()=>(await import("./budget-FEEEYUX2.js")).budgetDomain,"business-hours":async()=>(await import("./business-hours-I4X6YQS3.js")).businessHoursDomain,"business-place":async()=>(await import("./sales-master-UNKMFZDV.js")).businessPlaceDomain,company:async()=>(await import("./company-YFHD4RLP.js")).companyDomain,contract:async()=>(await import("./contract-C7PTM573.js")).
|
|
5
|
-
contractDomain,customer:async()=>(await import("./company-YFHD4RLP.js")).customerDomain,department:async()=>(await import("./department-JZVWFUCI.js")).departmentDomain,deposit:async()=>(await import("./deposit-NUWEBC7M.js")).depositDomain,estimate:async()=>(await import("./estimate-GJEDV3D5.js")).estimateDomain,evaluation:async()=>(await import("./evaluation-KQPTG4G3.js")).evaluationDomain,expense:async()=>(await import("./expense-NFQY5NZN.js")).expenseDomain,faq:async()=>(await import("./faq-QVRTJ3KS.js")).
|
|
6
|
-
faqDomain,"fiscal-year":async()=>(await import("./fiscal-year-GL3RFX6H.js")).fiscalYearDomain,holiday:async()=>(await import("./holiday-FUYMZVGX.js")).holidayDomain,"goal-sheet":async()=>(await import("./evaluation-KQPTG4G3.js")).goalSheetDomain,inquiry:async()=>(await import("./inquiry-XMM6EHNJ.js")).inquiryDomain,invoice:async()=>(await import("./invoice-MLJEVQA4.js")).invoiceDomain,"job-title":async()=>(await import("./job-title-JHTVL7OO.js")).jobTitleDomain,knowledge:async()=>(await import("./domain-knowledge-QDSWQW4E.js")).
|
|
7
|
-
knowledgeDomain,leave:async()=>(await import("./leave-GXVOULRK.js")).leaveDomain,license:async()=>(await import("./license-XUPFMAGX.js")).licenseDomain,"login-history":async()=>(await import("./login-history-JIWV62KF.js")).loginHistoryDomain,media:async()=>(await import("./media-FKKQA223.js")).mediaDomain,meeting:async()=>(await import("./knowledge-MROBIUE5.js")).meetingDomain,note:async()=>(await import("./knowledge-MROBIUE5.js")).noteDomain,notification:async()=>(await import("./notification-YAT6O2TK.js")).
|
|
8
|
-
notificationDomain,onedrive:async()=>(await import("./onedrive-Z43D26SJ.js")).onedriveDomain,outlook:async()=>(await import("./outlook-GXWQLCR6.js")).outlookDomain,payee:async()=>(await import("./sales-master-UNKMFZDV.js")).payeeDomain,position:async()=>(await import("./position-33HC7ETC.js")).positionDomain,project:async()=>(await import("./project-O6TQKZBJ.js")).projectDomain,prospect:async()=>(await import("./prospect-LQ2RLIBN.js")).prospectDomain,purchase:async()=>(await import("./purchase-E25SBHR2.js")).
|
|
9
|
-
purchaseDomain,qualification:async()=>(await import("./skill-BJFHENEO.js")).qualificationDomain,receivable:async()=>(await import("./receivable-M3IUSRB7.js")).receivableDomain,redmine:async()=>(await import("./redmine-OIBKHGK3.js")).redmineDomain,report:async()=>(await import("./report-TS7D6YF5.js")).reportDomain,"role-template":async()=>(await import("./evaluation-KQPTG4G3.js")).roleTemplateDomain,"rounding-setting":async()=>(await import("./sales-numbering-URGXUTUX.js")).roundingSettingDomain,
|
|
10
|
-
"seal-impression":async()=>(await import("./sales-master-UNKMFZDV.js")).sealImpressionDomain,search:async()=>(await import("./search-OEOAUIW3.js")).searchDomain,segment:async()=>(await import("./segment-H7FFI52Z.js")).segmentDomain,shift:async()=>(await import("./attendance-lists-RVJIQAAM.js")).shiftDomain,skill:async()=>(await import("./skill-BJFHENEO.js")).skillDomain,"staffing-board":async()=>(await import("./staffing-board-2ZV2Q6TC.js")).staffingBoardDomain,storage:async()=>(await import("./storage-AQDCEBDJ.js")).
|
|
11
|
-
storageDomain,"supplier-payment":async()=>(await import("./supplier-payment-2OVDNHBD.js")).supplierPaymentDomain,support:async()=>(await import("./support-6NZCSDPJ.js")).supportDomain,task:async()=>(await import("./task-GLFAR4GN.js")).taskDomain,teams:async()=>(await import("./teams-KNXVEWMD.js")).teamsDomain,user:async()=>(await import("./user-L6NYXPV6.js")).userDomain,"user-contract-type":async()=>(await import("./user-contract-type-2PUE2JQL.js")).userContractTypeDomain,"user-group":async()=>(await import("./user-group-EIYVFUTB.js")).
|
|
12
|
-
userGroupDomain,wiki:async()=>(await import("./knowledge-MROBIUE5.js")).wikiDomain,workchange:async()=>(await import("./attendance-lists-RVJIQAAM.js")).workchangeDomain,"worker-agent":async()=>(await import("./worker-agent-2BARDPDL.js")).workerAgentDomain,workflow:async()=>(await import("./workflow-P4SJX6YR.js")).workflowDomain};async function loadDomain(name){return LOADERS[name]()}export{loadDomain};
|
package/dist/chunk-UVTOBRHP.js
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { createRequire as __twpCreateRequire } from 'node:module';
|
|
2
|
-
const require = __twpCreateRequire(import.meta.url);
|
|
3
|
-
import{isModeId,isPermissionModeId}from"./chunk-2LOT54OO.js";import{API_TOKEN,HELP_TOKEN,isDomainName}from"./chunk-JQQP7JLQ.js";import{BOOLEAN_FLAGS,dispatch,resolveRoute,rewriteQueueCommand}from"./chunk-EOXTDZTA.js";import{splitFlagToken}from"./chunk-QQRJLH6B.js";var GLOBAL_FLAGS=new Set(["-h","--help","-v","--version","--profile","--output","--query","--dry-run","--debug","--yes","-y","--refresh"]);function parseArgv(rawArgv){const out={command:"tui",safe:false,daemon:false,forceRunner:false,stopForce:false,logoutForce:false,stopDrain:false,noTui:false,doctor:false,yes:false,skillAll:false,includeStopped:false,planEmpty:false,planCheck:false,noAiConfigFile:false,verbose:false,loginMethod:"browser",loginNoBrowser:false,promptFromStdin:false,domainArgv:[],
|
|
4
|
-
domainHelp:false,dryRun:false,debug:false,refresh:false,unknown:[],allowedTools:[],disallowedTools:[]};const queue=rewriteQueueCommand(rawArgv);if(queue.moved!==void 0){out.movedCommand=queue.moved;return out}const argv=queue.argv;const route=resolveRoute(dispatch(argv));const consumed=new Set;const[firstIndex,secondIndex]=route.consumed;if(route.kind==="builtin"){out.command=route.command;if(route.action!==void 0)out.taskLoopAction=route.action;for(const index of route.consumed)consumed.add(index)}else if(route.
|
|
5
|
-
kind==="domain"){if(route.domain===HELP_TOKEN){if(route.operation===void 0){out.command="help";if(firstIndex!==void 0)consumed.add(firstIndex)}else if(isDomainName(route.operation)){out.command="domain";out.domain=route.operation;out.domainHelp=true;if(firstIndex!==void 0)consumed.add(firstIndex);if(secondIndex!==void 0)consumed.add(secondIndex)}else if(route.operation===API_TOKEN){out.command="api";out.domainHelp=true;if(firstIndex!==void 0)consumed.add(firstIndex);if(secondIndex!==void 0)consumed.
|
|
6
|
-
add(secondIndex)}}else if(route.domain===API_TOKEN){out.command="api";if(firstIndex!==void 0)consumed.add(firstIndex)}else if(isDomainName(route.domain)){out.command="domain";out.domain=route.domain;if(route.operation!==void 0)out.operation=route.operation;for(const index of route.consumed)consumed.add(index)}}const hasSubcommandToken=route.kind==="builtin"||route.kind==="domain"&&(route.domain===HELP_TOKEN||route.domain===API_TOKEN||isDomainName(route.domain));const isDomainRoute=out.command===
|
|
7
|
-
"domain"||out.command==="api";const takeValue=(i,flag,inline)=>{const value=inline??argv[i+1];if(value===void 0||inline===void 0&&value.startsWith("-")){out.unknown.push(flag);return{step:0}}if(value.trim()===""){out.unknown.push(inline===void 0?`${flag} `:`${flag}=${inline}`);return{step:0}}return{value,step:inline===void 0?1:0}};let optionsClosed=false;for(let i=0;i<argv.length;i++){if(consumed.has(i))continue;const raw=argv[i];if(raw===void 0)continue;if(isDomainRoute&&raw==="--")optionsClosed=
|
|
8
|
-
true;const{name:arg,value:inline}=splitFlagToken(raw);if(isDomainRoute&&(optionsClosed||!GLOBAL_FLAGS.has(arg))){out.domainArgv.push(raw);continue}if(inline!==void 0&&BOOLEAN_FLAGS.has(arg)){out.unknown.push(raw);continue}switch(arg){case"-h":case"--help":if(isDomainRoute)out.domainHelp=true;else out.command="help";break;case"-v":case"--version":out.command="version";break;case"--no-tui":out.noTui=true;break;case"--doctor":out.doctor=true;break;case"--password":out.loginMethod="password";break;case"\
|
|
9
|
-
--token":out.loginMethod="token";break;case"--no-browser":out.loginNoBrowser=true;break;case"--profile":{const{value,step}=takeValue(i,"--profile",inline);if(value!==void 0){out.profile=value;i+=step}break}case"-p":case"--print":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(hasSubcommandToken){out.unknown.push(raw)}else if(next==="-"){out.command="print";out.promptFromStdin=true;out.prompt="";i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith("-"))){out.command="\
|
|
10
|
-
print";out.prompt=next;i+=step}else{out.unknown.push(raw)}break}case"--output":{const{value,step}=takeValue(i,"--output",inline);if(value!==void 0){out.output=value;i+=step}break}case"--query":{const{value,step}=takeValue(i,"--query",inline);if(value!==void 0){out.query=value;i+=step}break}case"--dry-run":out.dryRun=true;break;case"--debug":out.debug=true;break;case"--refresh":out.refresh=true;break;case"--tenant":{const{value,step}=takeValue(i,"--tenant",inline);if(value!==void 0){out.tenant=value;
|
|
11
|
-
i+=step}break}case"--mode":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(isModeId(next)){out.mode=next;i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith("-"))){out.unknown.push(inline!==void 0?raw:`--mode ${next}`);i+=step}else{out.unknown.push("--mode")}break}case"--permission-mode":{const next=inline??argv[i+1];const step=inline===void 0?1:0;if(isPermissionModeId(next)){out.permissionMode=next;i+=step}else if(next!==void 0&&(inline!==void 0||!next.startsWith("\
|
|
12
|
-
-"))){out.unknown.push(inline!==void 0?raw:`--permission-mode ${next}`);i+=step}else{out.unknown.push("--permission-mode")}break}case"--allowed-tools":case"--disallowed-tools":{const{value,step}=takeValue(i,arg,inline);if(value!==void 0){(arg==="--allowed-tools"?out.allowedTools:out.disallowedTools).push(value);i+=step}break}case"--model":{const{value,step}=takeValue(i,"--model",inline);if(value!==void 0){out.model=value;i+=step}break}case"--safe":out.safe=true;break;case"--daemon":out.daemon=true;
|
|
13
|
-
break;case"--force-runner":out.forceRunner=true;break;case"--force":out.stopForce=true;break;case"--drain":out.stopDrain=true;break;case"--project":{const{value,step}=takeValue(i,"--project",inline);if(value!==void 0){out.project=value;i+=step}break}case"--engine":{const{value,step}=takeValue(i,"--engine",inline);if(value!==void 0){out.engine=value;i+=step}break}case"--interval":case"--max-cycles":{const{value,step}=takeValue(i,arg,inline);if(value!==void 0){const n=Number.parseInt(value,10);if(Number.
|
|
14
|
-
isInteger(n)&&n>0){if(arg==="--interval")out.interval=n;else out.maxCycles=n}else{out.unknown.push(inline!==void 0?raw:`${arg} ${value}`)}i+=step}break}case"--yes":case"-y":out.yes=true;break;case"--ai":{const{value:v,step}=takeValue(i,"--ai",inline);if(v!==void 0){out.ais=[...out.ais??[],v];i+=step}break}case"--no-ai-config-file":out.noAiConfigFile=true;break;case"--workspace":{const{value:v,step}=takeValue(i,"--workspace",inline);if(v!==void 0){out.workspace=v;i+=step}break}case"--ai-config-fi\
|
|
15
|
-
le":{const{value:v,step}=takeValue(i,"--ai-config-file",inline);if(v!==void 0){out.aiConfigFile=v;i+=step}break}case"--verbose":out.verbose=true;break;case"--now":{const{value:v,step}=takeValue(i,"--now",inline);if(v!==void 0){out.scheduleNow=v;i+=step}break}case"--counts":{const{value:v,step}=takeValue(i,"--counts",inline);if(v!==void 0){out.scheduleCounts=v;i+=step}break}case"--gate":{const{value:v,step}=takeValue(i,"--gate",inline);if(v!==void 0){out.scheduleGate=v;i+=step}break}case"--file":{
|
|
16
|
-
if(inline===void 0&&argv[i+1]==="-"){out.charterFile="-";i+=1;break}const{value:v,step}=takeValue(i,"--file",inline);if(v!==void 0){out.charterFile=v;i+=step}break}case"--out":{const{value:v,step}=takeValue(i,"--out",inline);if(v!==void 0){out.charterOut=v;i+=step}break}case"--revision":{const{value:v,step}=takeValue(i,"--revision",inline);if(v!==void 0){out.charterRevision=v;i+=step}break}case"--from":{const{value:v,step}=takeValue(i,"--from",inline);if(v!==void 0){out.revisionFrom=v;i+=step}break}case"\
|
|
17
|
-
--to":{const{value:v,step}=takeValue(i,"--to",inline);if(v!==void 0){out.revisionTo=v;i+=step}break}case"--dir":{const{value:v,step}=takeValue(i,"--dir",inline);if(v!==void 0){out.skillDir=v;i+=step}break}case"--config":{const{value:v,step}=takeValue(i,"--config",inline);if(v!==void 0){out.skillConfig=v;i+=step}break}case"--all":out.skillAll=true;break;case"--include-stopped":out.includeStopped=true;break;case"--empty":out.planEmpty=true;break;case"--check":out.planCheck=true;break;default:if(out.
|
|
18
|
-
command==="task-loop"&&out.taskLoopAction==="charter"&&out.charterOp===void 0&&isRevisionAwareOp(raw)){out.charterOp=raw;break}if(out.command==="task-loop"&&out.taskLoopAction==="schedule"){if(out.scheduleOp===void 0&&isScheduleOp(raw)){out.scheduleOp=raw;break}if(out.scheduleOp==="config"&&out.scheduleConfigOp===void 0&&(raw==="pull"||raw==="push")){out.scheduleConfigOp=raw;break}if(out.scheduleOp==="delete"&&out.scheduleId===void 0&&!raw.startsWith("-")){out.scheduleId=raw;break}}if(out.command===
|
|
19
|
-
"task-loop"&&out.taskLoopAction==="settings"&&out.settingsOp===void 0&&(raw==="push"||raw==="pull")){out.settingsOp=raw;break}if(out.command==="task-loop"&&out.taskLoopAction==="plan"&&out.planOp===void 0&&raw==="submit"){out.planOp="submit";break}if(out.command==="task-loop"&&out.taskLoopAction==="capacity"&&out.capacityOp===void 0&&(raw==="report"||raw==="list")){out.capacityOp=raw;break}if(out.command==="task-loop"&&out.taskLoopAction==="runner"){if(out.runnerOp===void 0&&(raw==="list"||raw===
|
|
20
|
-
"remove")){out.runnerOp=raw;break}if(out.runnerOp==="remove"&&out.runnerTargetId===void 0&&!raw.startsWith("-")){out.runnerTargetId=raw;break}}if(out.command==="task-loop"&&out.taskLoopAction==="skill"){if(out.skillOp===void 0&&(isRevisionAwareOp(raw)||isSkillManageOp(raw)||raw==="check")){out.skillOp=raw;break}if(out.skillOp!==void 0&&out.skillName===void 0&&!raw.startsWith("-")){out.skillName=raw;break}}out.unknown.push(raw)}}if(out.command!=="login"&&out.loginMethod!=="browser"){out.unknown.push(
|
|
21
|
-
out.loginMethod==="password"?"--password":"--token");out.loginMethod="browser"}if(out.permissionMode!==void 0&&out.command!=="tui"&&out.command!=="print"){out.unknown.push("--permission-mode");delete out.permissionMode}if(out.command!=="tui"&&out.command!=="print"){if(out.allowedTools.length>0)out.unknown.push("--allowed-tools");if(out.disallowedTools.length>0)out.unknown.push("--disallowed-tools");out.allowedTools=[];out.disallowedTools=[]}if(out.loginNoBrowser&&!(out.command==="login"&&out.loginMethod===
|
|
22
|
-
"browser")){out.unknown.push("--no-browser");out.loginNoBrowser=false}if(out.command==="logout"&&out.stopForce){out.logoutForce=true;out.stopForce=false}if(out.command!=="task-loop"){if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.stopForce)out.unknown.push("--force");if(out.stopDrain)out.unknown.push("--drain");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push(
|
|
23
|
-
"--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles");if(out.project!==void 0)out.unknown.push("--project");if(out.verbose)out.unknown.push("--verbose");if(out.scheduleNow!==void 0)out.unknown.push("--now");if(out.scheduleCounts!==void 0)out.unknown.push("--counts");if(out.scheduleGate!==void 0)out.unknown.push("--gate");if(out.ais!==void 0)out.unknown.push("--ai");if(out.workspace!==void 0)out.unknown.push("--workspace");if(out.aiConfigFile!==void 0)out.unknown.push("--ai-con\
|
|
24
|
-
fig-file");if(out.noAiConfigFile)out.unknown.push("--no-ai-config-file");if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.skillDir!==void 0)out.unknown.push("--dir");if(out.skillAll)out.unknown.push("--all");if(out.skillConfig!==void 0)out.unknown.push("--config");if(out.revisionFrom!==void 0)out.unknown.push("--from");if(out.revisionTo!==void 0)out.unknown.push("--to");
|
|
25
|
-
if(out.planEmpty)out.unknown.push("--empty");if(out.planCheck)out.unknown.push("--check")}if(out.yes&&out.command!=="task-loop"&&!isDomainRoute)out.unknown.push("--yes");const acceptsOutput=isDomainRoute||out.command==="whoami"||out.command==="task-loop"&&out.taskLoopAction==="status"||out.command==="task-loop"&&out.taskLoopAction==="skill"&&(out.skillOp==="list"||out.skillOp==="show"||out.skillOp==="check")||out.command==="task-loop"&&out.taskLoopAction==="runner"||out.command==="task-loop"&&out.
|
|
26
|
-
taskLoopAction==="capacity"&&out.capacityOp==="list";if(!acceptsOutput){if(out.output!==void 0)out.unknown.push("--output");if(out.query!==void 0)out.unknown.push("--query")}else if(out.command==="task-loop"&&(out.skillOp==="check"||out.taskLoopAction==="runner"&&out.runnerOp==="remove")&&out.query!==void 0){out.unknown.push("--query")}if(!isDomainRoute){if(out.dryRun)out.unknown.push("--dry-run");if(out.debug)out.unknown.push("--debug");if(out.refresh)out.unknown.push("--refresh")}if(out.command===
|
|
27
|
-
"api"&&out.refresh){out.unknown.push("--refresh");out.refresh=false}if(out.command==="task-loop"&&(out.taskLoopAction!=="schedule"||out.scheduleOp!==void 0)){if(out.verbose)out.unknown.push("--verbose");if(out.scheduleNow!==void 0)out.unknown.push("--now");if(out.scheduleCounts!==void 0)out.unknown.push("--counts");if(out.scheduleGate!==void 0)out.unknown.push("--gate")}if(out.command==="task-loop"&&out.taskLoopAction!=="stop"&&out.stopForce){out.unknown.push("--force")}if(out.command==="task-lo\
|
|
28
|
-
op"&&out.taskLoopAction!=="stop"&&out.stopDrain){out.unknown.push("--drain")}if(out.command==="task-loop"&&out.taskLoopAction==="stop"&&out.stopForce&&out.stopDrain){out.unknown.push("--force \u3068 --drain \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093");out.stopForce=false;out.stopDrain=false}if(out.command==="task-loop"&&out.taskLoopAction!=="setup"){const yesConfirms=out.taskLoopAction==="charter"||out.taskLoopAction==="skill"||out.taskLoopAction==="settings"||out.taskLoopAction===
|
|
29
|
-
"runner"&&out.runnerOp==="remove"||out.taskLoopAction==="schedule"&&out.scheduleOp!==void 0&&out.scheduleOp!=="list";if(out.yes&&!yesConfirms)out.unknown.push("--yes");if(out.ais!==void 0)out.unknown.push("--ai");if(out.workspace!==void 0)out.unknown.push("--workspace");if(out.aiConfigFile!==void 0)out.unknown.push("--ai-config-file");if(out.noAiConfigFile)out.unknown.push("--no-ai-config-file")}if(out.command==="task-loop"&&(out.taskLoopAction==="stop"||out.taskLoopAction==="status")){if(out.safe)
|
|
30
|
-
out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}if(out.command==="task-loop"&&out.taskLoopAction==="setup"){if(out.engine!==void 0)out.unknown.push("--engine");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)
|
|
31
|
-
out.unknown.push("--force-runner");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}if(out.command==="task-loop"&&out.taskLoopAction==="charter"){if(out.charterOp===void 0){out.unknown.push("charter \u306B\u306F push / pull / history / diff / revert \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}if(out.charterOp!=="push"&&out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOp!==
|
|
32
|
-
"push"&&out.charterOp!=="revert"&&out.charterRevision!==void 0){out.unknown.push("--revision")}pushRevisionFlagErrors(out,out.charterOp);if((out.charterOp==="history"||out.charterOp==="diff")&&out.yes)out.unknown.push("--yes");if(out.charterOp!=="pull"&&out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==
|
|
33
|
-
void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="skill"){if(out.skillOp===void 0){out.unknown.push(SKILL_OP_REQUIRED)}else if(out.skillOp==="check"){if(out.skillName!==void 0)out.unknown.push("skill check \u306F\u30B9\u30AD\u30EB\u540D\u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093\uFF08\u30B5\u30FC\u30D0\u306E\u5168\u30B9\u30AD\u30EB\u3092\u691C\u67FB\u3057\u307E\u3059\uFF09");if(out.skillAll)
|
|
34
|
-
out.unknown.push("--all");if(out.yes)out.unknown.push("--yes")}else if(out.skillOp==="list"&&out.skillAll){out.unknown.push("--all")}else if(out.skillOp==="list"&&out.skillName!==void 0){out.unknown.push(`skill list \u306F\u30B9\u30AD\u30EB\u540D\u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093: ${out.skillName}`)}else if(out.skillOp==="list"){}else if(out.skillOp!=="push"&&out.skillOp!=="pull"&&out.skillAll){out.unknown.push(`skill ${out.skillOp} \u306F --all \u3092\u53D7\u3051\u4ED8\u3051\u307E\u305B\u3093\uFF08\u30B9\u30AD\u30EB\u540D\u30921\u3064\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044\uFF09`)}else if(out.
|
|
35
|
-
skillName===void 0&&!out.skillAll){out.unknown.push(out.skillOp==="push"||out.skillOp==="pull"?`skill ${out.skillOp} \u306B\u306F\u30B9\u30AD\u30EB\u540D\u304B --all \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`:`skill ${out.skillOp} \u306B\u306F\u30B9\u30AD\u30EB\u540D\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`)}else if(out.skillName!==void 0&&out.skillAll){out.unknown.push("\u30B9\u30AD\u30EB\u540D\u3068 --all \u306F\u540C\u6642\u306B\u6307\u5B9A\u3067\u304D\u307E\u305B\u3093")}
|
|
36
|
-
if(out.skillOp!=="push"&&out.skillOp!=="revert"&&out.skillOp!=="delete"&&out.charterRevision!==void 0){out.unknown.push("--revision")}pushRevisionFlagErrors(out,out.skillOp);if((out.skillOp==="history"||out.skillOp==="diff"||out.skillOp==="list"||out.skillOp==="show")&&out.yes){out.unknown.push("--yes")}if(out.skillOp!=="push"&&out.skillOp!=="pull"&&out.skillDir!==void 0)out.unknown.push("--dir");if(out.skillOp!=="check"&&out.skillConfig!==void 0)out.unknown.push("--config");if(out.charterFile!==
|
|
37
|
-
void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="settings"){if(out.settingsOp===void 0)out.unknown.push(
|
|
38
|
-
"settings \u306B\u306F push / pull \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.settingsOp!=="push"&&out.charterFile!==void 0)out.unknown.push("--file");if(out.settingsOp!=="push"&&out.charterRevision!==void 0)out.unknown.push("--revision");if(out.settingsOp!=="pull"&&out.charterOut!==void 0)out.unknown.push("--out");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runne\
|
|
39
|
-
r");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="plan"){if(out.planOp===void 0)out.unknown.push("plan \u306B\u306F submit \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.safe)out.unknown.push(
|
|
40
|
-
"--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="capacity"){if(out.capacityOp===void 0)out.unknown.push("capacity \u306B\u306F report / list \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");
|
|
41
|
-
if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="tas\
|
|
42
|
-
k-loop"&&out.taskLoopAction==="runner"){if(out.runnerOp===void 0)out.unknown.push("runner \u306B\u306F list / remove \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(out.runnerOp==="remove"&&out.runnerTargetId===void 0){out.unknown.push("runner remove \u306B\u306F runner_id \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==
|
|
43
|
-
void 0)out.unknown.push("--revision");if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"&&out.taskLoopAction==="schedule"&&out.scheduleOp!==void 0){const op=out.scheduleOp;const takesFile=op==="push"||op==="config"&&
|
|
44
|
-
out.scheduleConfigOp==="push";if(op==="config"&&out.scheduleConfigOp===void 0){out.unknown.push("schedule config \u306B\u306F pull \u304B push \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044")}if(op==="delete"&&out.scheduleId===void 0)out.unknown.push("schedule delete \u306B\u306F\u5B9A\u7FA9ID\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044");if(takesFile&&out.charterFile===void 0)out.unknown.push(`schedule ${op==="push"?"push":"config push"} \u306B\u306F --file <\u30D1\u30B9> \u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044`);
|
|
45
|
-
if(!takesFile&&out.charterFile!==void 0)out.unknown.push("--file");if(!(op==="config"&&out.scheduleConfigOp==="pull")&&out.charterOut!==void 0)out.unknown.push("--out");if((op==="list"||op==="config"&&out.scheduleConfigOp!=="push")&&out.charterRevision!==void 0){out.unknown.push("--revision")}if(out.safe)out.unknown.push("--safe");if(out.daemon)out.unknown.push("--daemon");if(out.forceRunner)out.unknown.push("--force-runner");if(out.engine!==void 0)out.unknown.push("--engine");if(out.interval!==
|
|
46
|
-
void 0)out.unknown.push("--interval");if(out.maxCycles!==void 0)out.unknown.push("--max-cycles")}else if(out.command==="task-loop"){if(out.charterFile!==void 0)out.unknown.push("--file");if(out.charterOut!==void 0)out.unknown.push("--out");if(out.charterRevision!==void 0)out.unknown.push("--revision")}if(out.includeStopped&&!(out.command==="task-loop"&&out.taskLoopAction==="capacity"&&out.capacityOp==="list")){out.unknown.push("--include-stopped")}if(out.command==="task-loop"&&out.taskLoopAction!==
|
|
47
|
-
"skill"){if(out.skillDir!==void 0)out.unknown.push("--dir");if(out.skillAll)out.unknown.push("--all");if(out.skillConfig!==void 0)out.unknown.push("--config")}if(out.command==="task-loop"&&out.taskLoopAction!=="skill"&&out.taskLoopAction!=="charter"){if(out.revisionFrom!==void 0)out.unknown.push("--from");if(out.revisionTo!==void 0)out.unknown.push("--to")}if(out.command==="task-loop"&&out.taskLoopAction!=="plan"){if(out.planEmpty)out.unknown.push("--empty");if(out.planCheck)out.unknown.push("--\
|
|
48
|
-
check")}return out}function isScheduleOp(raw){return raw==="list"||raw==="push"||raw==="delete"||raw==="config"}function isSkillManageOp(raw){return raw==="list"||raw==="show"||raw==="delete"}var SKILL_OP_REQUIRED="skill \u306B\u306F push / pull / list / show / delete / history / diff / revert / check \u306E\u3044\u305A\u308C\u304B\u3092\u6307\u5B9A\u3057\u3066\u304F\u3060\u3055\u3044";function isRevisionAwareOp(raw){return raw==="push"||raw==="pull"||raw==="history"||raw==="diff"||raw==="revert"}
|
|
49
|
-
function pushRevisionFlagErrors(out,op){if(op!=="diff"&&out.revisionFrom!==void 0)out.unknown.push("--from");if(op!=="diff"&&op!=="revert"&&out.revisionTo!==void 0)out.unknown.push("--to")}export{GLOBAL_FLAGS,parseArgv};
|