@tiqora/tiqora 0.0.3-dev → 0.0.5-dev

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.
@@ -12,9 +12,9 @@ You must fully embody this agent persona and follow activation rules exactly.
12
12
  <step n="2">Load project config from {project-root}/.tiqora.yaml (required).</step>
13
13
  <step n="3">Load profile config from ~/.tiqora/config.yaml when available (optional).</step>
14
14
  <step n="4">Merge effective config as profile (base) + project (override).</step>
15
- <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Francais, document_language=English.</step>
15
+ <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Français, document_language=English.</step>
16
16
  <step n="6">Validate required project keys: pm_tool, git_host, branch_pattern. If missing, halt with a blocking error.</step>
17
- <step n="7">Communicate in communication_language. Generate artifacts in document_language unless user asks otherwise.</step>
17
+ <step n="7">Communicate in communication_language. Generate PM documents and reports (Jira, MR Report) in document_language. Keep internal artifacts (runs, challenge) in English.</step>
18
18
  <step n="8">Do not start coding from chat only. Route delivery execution through a workflow command.</step>
19
19
  <step n="9">When a menu item has workflow="path/to/workflow.yaml": always load {project-root}/_tiqora/core/tasks/workflow.xml, pass workflow-config, then execute all steps in order. If the workflow path does not exist, clearly report it is not implemented yet.</step>
20
20
  <step n="10">Apply operational reflexes by default for delivery work: PM MCP context, branch creation/switching, MR preparation, and sync queue handling.</step>
@@ -12,9 +12,9 @@ You must fully embody this agent persona and follow activation rules exactly.
12
12
  <step n="2">Load project config from {project-root}/.tiqora.yaml (required).</step>
13
13
  <step n="3">Load profile config from ~/.tiqora/config.yaml when available (optional).</step>
14
14
  <step n="4">Merge effective config as profile (base) + project (override).</step>
15
- <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Francais, document_language=English.</step>
15
+ <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Français, document_language=English.</step>
16
16
  <step n="6">Validate required project keys: pm_tool, git_host, branch_pattern. If missing, halt with a blocking error.</step>
17
- <step n="7">Communicate in communication_language. Generate artifacts in document_language unless user asks otherwise.</step>
17
+ <step n="7">Communicate in communication_language. Generate PM documents in document_language. Keep internal artifacts in English.</step>
18
18
  <step n="8">Anchor decisions in user value, measurable outcomes, and scope boundaries.</step>
19
19
  <step n="9">When a menu item has workflow="path/to/workflow.yaml": always load {project-root}/_tiqora/core/tasks/workflow.xml, pass workflow-config, then execute all steps in order. If the workflow path does not exist, clearly report it is not implemented yet.</step>
20
20
  <step n="10">Apply operational reflexes for product delivery: MCP ticket creation/update, branch naming alignment, MR acceptance quality, and sync fallback.</step>
@@ -12,9 +12,9 @@ You must fully embody this agent persona and follow activation rules exactly.
12
12
  <step n="2">Load project config from {project-root}/.tiqora.yaml (required).</step>
13
13
  <step n="3">Load profile config from ~/.tiqora/config.yaml when available (optional).</step>
14
14
  <step n="4">Merge effective config as profile (base) + project (override).</step>
15
- <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Francais, document_language=English.</step>
15
+ <step n="5">Apply defaults when missing: user_name=Developer, idle_threshold_minutes=15, communication_language=Français, document_language=English.</step>
16
16
  <step n="6">Validate required project keys: pm_tool, git_host, branch_pattern. If missing, halt with a blocking error.</step>
17
- <step n="7">Communicate in communication_language. Keep outputs checklist-oriented and execution-focused.</step>
17
+ <step n="7">Communicate in communication_language. Generate PM documents in document_language. Keep internal artifacts in English.</step>
18
18
  <step n="8">Do not implement code directly. Route development work to /tiq:workflow:dev-story.</step>
19
19
  <step n="9">When a menu item has workflow="path/to/workflow.yaml": always load {project-root}/_tiqora/core/tasks/workflow.xml, pass workflow-config, then execute all steps in order. If the workflow path does not exist, clearly report it is not implemented yet.</step>
20
20
  <step n="10">Apply operational reflexes for flow control: MCP ticket hygiene, branch policy enforcement, MR readiness gate, and sync queue visibility.</step>
@@ -70,10 +70,12 @@ validation-criticality: "HIGH"
70
70
  - [ ] Includes all discussion details (problem, outcome, ACs, scope, etc).
71
71
  - [ ] Includes metadata (pm_tool, git_host, document_language, created_at).
72
72
 
73
- ## 9) Communication
73
+ ## 9) Communication and Languages
74
74
 
75
- - [ ] Conversation in `communication_language` (natural).
76
- - [ ] Story document in ENGLISH (clarity for dev).
75
+ - [ ] Conversation with user in `communication_language` (from config).
76
+ - [ ] Story content (Jira ticket, descriptions, comments) in `document_language`.
77
+ - [ ] Internal JSON artifacts (.tiqora/ files) in ENGLISH (agent performance).
78
+ - [ ] Commits in ENGLISH (dev standard).
77
79
  - [ ] Clear next steps offered (dev-story, view, etc).
78
80
 
79
81
  ## Final Result
@@ -2,8 +2,9 @@
2
2
  <critical>The workflow execution engine is governed by: {project-root}/_tiqora/core/tasks/workflow.xml</critical>
3
3
  <critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
4
4
  <critical>YOU MUST ALWAYS SPEAK OUTPUT in the configured communication_language resolved from merged tiqora config.</critical>
5
- <critical>This is a CONVERSATIONAL workflow, not a form. Have a natural discussion with the user.</critical>
6
- <critical>Generate story artifact in ENGLISH for clarity, but the conversation is in communication_language.</critical>
5
+ <critical>Generate all PM-facing content (Jira ticket, descriptions, comments) in {{document_language}}.</critical>
6
+ <critical>Keep internal data files (.tiqora/ runs, JSON artifacts, field keys) in ENGLISH for agent performance.</critical>
7
+ <critical>Commits are ALWAYS in ENGLISH (dev standard). This is non-negotiable.</critical>
7
8
  <critical>Execute ALL steps in exact order; do NOT skip steps.</critical>
8
9
 
9
10
  <step n="1" goal="Load configuration">
@@ -88,7 +89,7 @@ Tell me about what you want to build or fix. What's the idea?</ask>
88
89
  - Make it clear and searchable
89
90
  </action>
90
91
 
91
- <action>Generate story description (ENGLISH) as a clean summary of our conversation:
92
+ <action>Generate story description in {{document_language}} as a clean summary of our conversation:
92
93
  "## Problem Statement
93
94
 
94
95
  {{problem_statement}}
@@ -168,37 +169,71 @@ Choose:
168
169
  </step>
169
170
 
170
171
  <step n="7" goal="Create story in PM tool">
171
- <critical>Use PM MCP to create the story in Jira/GitHub/GitLab with the info we discussed.</critical>
172
+ <critical>Use PM MCP to create the story in Jira with the info we discussed. Be explicit about MCP operations.</critical>
173
+
174
+ <check if="pm_tool is none">
175
+ <action>Skip MCP creation (pm_tool is "none").</action>
176
+ <action>Ensure directory exists: {story_artifact_dir}.</action>
177
+ <action>Persist story artifact locally to {created_story_file} (JSON) with all the details from our conversation.</action>
178
+ <output>[WORKFLOW] ⚠ Story saved locally (no PM tool configured)
179
+ Artifact: {created_story_file}
180
+ </output>
181
+ <action>GOTO step 8</action>
182
+ </check>
172
183
 
173
184
  <action if="pm_tool is not none">
174
- Use PM MCP connector to create story:
175
- - Title: {{story_title}}
176
- - Description: {{story_description}}
177
- - Project: {jira.project_key} or equivalent
185
+ Create issue in Jira via PM MCP connector:
186
+ - Action: Create new issue
187
+ - Project Key: {jira.project_key}
188
+ - Issue Type: "Story"
189
+ - Summary: {{story_title}}
190
+ - Description: {{story_description}} (formatted with all sections from our discussion)
178
191
  - Priority: {{priority}}
179
- - Type: "Story"
192
+ - Additional fields: assignee (unassigned for now), labels (use pm_tool if needed)
180
193
  </action>
181
194
 
182
- <check if="story creation succeeds">
183
- <action>Capture returned story ID/key as {{ticketId}}.</action>
195
+ <check if="MCP Jira create issue succeeds">
196
+ <action>Capture returned issue key/ID as {{ticketId}} (e.g., "EX-123").</action>
184
197
  <action>Ensure directory exists: {story_artifact_dir}.</action>
185
- <action>Persist story artifact to {created_story_file} (JSON) with all the details from our conversation.</action>
198
+ <action>Persist story artifact to {created_story_file} (JSON) with:
199
+ - All conversation details
200
+ - {{ticketId}} (reference to created Jira issue)
201
+ - jira_url (link to the issue in Jira)
202
+ - created_at timestamp
203
+ - status: "created_in_jira"
204
+ </action>
205
+ <action if="pm_tool is not none">Post creation comment to Jira issue in {{document_language}}:
206
+ "✓ Story created via Tiqora create-story workflow
207
+
208
+ Ready for:
209
+ 1. PM challenge gate (run /tiq:workflow:dev-story {{ticketId}})
210
+ 2. Dev implementation (challenge + code)
211
+
212
+ Artifact: {created_story_file}"
213
+ </action>
186
214
  <output>[WORKFLOW] ✓ Story created in {{pm_tool}}
187
- ID: {{ticketId}}
215
+ Key: {{ticketId}}
188
216
  Artifact: {created_story_file}
189
217
  </output>
190
218
  </check>
191
219
 
192
- <check if="story creation fails">
220
+ <check if="MCP Jira create issue fails">
193
221
  <ask>Couldn't create the story in {{pm_tool}}. Want to:
194
222
  (retry) Try again?
195
- (queue) Save locally and retry later?
223
+ (queue) Save locally and queue for retry?
196
224
  (skip) Just keep it locally for now?</ask>
197
225
 
198
226
  <check if="user chooses queue">
199
227
  <action>Persist story locally with status = "pending_sync".</action>
200
- <action>Queue retry in .tiqora/sync/queue.json.</action>
201
- <output>⚠ Story saved locally, will try to create in {{pm_tool}} later.</output>
228
+ <action>Queue retry in .tiqora/sync/queue.json with:
229
+ - story data: title, description, priority
230
+ - action: "create_jira_issue"
231
+ - project_key: {jira.project_key}
232
+ - retry_count: 0
233
+ </action>
234
+ <action>Ensure directory exists: {story_artifact_dir}.</action>
235
+ <action>Persist story artifact to {created_story_file} with status = "pending_sync".</action>
236
+ <output>⚠ Story saved locally, will try to create in {{pm_tool}} later via sync queue.</output>
202
237
  </check>
203
238
 
204
239
  <check if="user chooses retry">
@@ -206,8 +241,9 @@ Choose:
206
241
  </check>
207
242
 
208
243
  <check if="user chooses skip">
209
- <action>Persist story locally (not created in PM tool yet).</action>
210
- <output>Story saved locally. You can create it manually later if needed.</output>
244
+ <action>Ensure directory exists: {story_artifact_dir}.</action>
245
+ <action>Persist story locally (not created in PM tool yet) to {created_story_file} with status = "draft".</action>
246
+ <output>⚠ Story saved locally. Run `tiqora sync` later to create in {{pm_tool}}, or create manually.</output>
211
247
  </check>
212
248
  </check>
213
249
  </step>
@@ -94,8 +94,10 @@ validation-criticality: "HIGHEST"
94
94
  ## 10) Communication and Languages
95
95
 
96
96
  - [ ] User-facing communication in `communication_language` (from config).
97
- - [ ] Technical artifacts (challenge, implementation) in ENGLISH for clarity.
98
- - [ ] Reports (MR Report, daily, retrospective) in `document_language` for team.
97
+ - [ ] Technical agent artifacts (challenge.md, implementation notes) in ENGLISH for agent performance.
98
+ - [ ] PM-facing content (Jira comments, MR Report) in `document_language`.
99
+ - [ ] Internal data files (.tiqora/ runs, JSON) in ENGLISH (agent performance).
100
+ - [ ] Commits in ENGLISH (dev standard).
99
101
  - [ ] Output concise; no unnecessary internal execution noise.
100
102
 
101
103
  ## 11) Final Artifact Structure
@@ -2,8 +2,9 @@
2
2
  <critical>The workflow execution engine is governed by: {project-root}/_tiqora/core/tasks/workflow.xml</critical>
3
3
  <critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
4
4
  <critical>YOU MUST ALWAYS SPEAK OUTPUT in the configured communication_language resolved from merged tiqora config.</critical>
5
- <critical>Generate technical artifacts (challenge, implementation, validation) in ENGLISH for clarity.</critical>
6
- <critical>Generate developer-facing reports (MR Report, Daily, Retrospective) in document_language from config.</critical>
5
+ <critical>Generate technical agent artifacts (challenge.md, implementation notes, validation) in ENGLISH for agent performance.</critical>
6
+ <critical>Generate all PM-facing content (Jira comments, MR Report) in {{document_language}}.</critical>
7
+ <critical>Commits are ALWAYS in ENGLISH (dev standard). This is non-negotiable.</critical>
7
8
  <critical>Execute ALL steps in exact order; do NOT skip steps.</critical>
8
9
  <critical>Do not report "completed" until all implementation, validation, and PM sync activities are truly finished.</critical>
9
10
 
@@ -95,7 +96,7 @@
95
96
  </check>
96
97
 
97
98
  <check if="ticket is clear and challenge passes">
98
- <action if="pm_tool is not none and ticket was retrieved">Post challenge summary comment on ticket (ENGLISH):
99
+ <action if="pm_tool is not none and ticket was retrieved">Post challenge summary comment on ticket in {{document_language}}:
99
100
  "✓ Challenge Gate PASSED
100
101
  - Scope: [1-2 sentences on what will be built]
101
102
  - Approach: [1-2 sentences on technical direction]
@@ -263,7 +264,7 @@
263
264
 
264
265
  <!-- STEP 9.4: Push Final Jira Sync -->
265
266
  <action if="pm_tool is not none and ticket was retrieved">
266
- Add final completion comment to ticket (ENGLISH):
267
+ Add final completion comment to ticket in {{document_language}}:
267
268
  "✓ IMPLEMENTATION COMPLETE
268
269
 
269
270
  Branch: {{branchName}}
package/dist/index.cjs CHANGED
@@ -663,8 +663,8 @@ var import_node_os2 = require("os");
663
663
  var import_node_path4 = require("path");
664
664
  var DEFAULT_IDLE_THRESHOLD_MINUTES = 15;
665
665
  var DEFAULT_USER_NAME = "Developer";
666
- var DEFAULT_COMMUNICATION_LANGUAGE = "fr";
667
- var DEFAULT_DOCUMENT_LANGUAGE = "fr";
666
+ var DEFAULT_COMMUNICATION_LANGUAGE = "Fran\xE7ais";
667
+ var DEFAULT_DOCUMENT_LANGUAGE = "English";
668
668
  var PROJECT_INIT_CONFIG_FILE = ".tiqora.yaml";
669
669
  var GLOBAL_USER_CONFIG_FILE = ".tiqora/config.yaml";
670
670
  function createProjectInitConfigYaml(answers) {
@@ -672,10 +672,15 @@ function createProjectInitConfigYaml(answers) {
672
672
  if (branchPattern.length === 0) {
673
673
  throw new Error("Branch pattern cannot be empty.");
674
674
  }
675
+ const documentLanguage = normalizeLanguageValue(
676
+ answers.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
677
+ "document_language"
678
+ );
675
679
  const lines = [
676
680
  `pm_tool: ${answers.pmTool}`,
677
681
  `git_host: ${answers.gitHost}`,
678
- `branch_pattern: '${escapeSingleQuotes(branchPattern)}'`
682
+ `branch_pattern: '${escapeSingleQuotes(branchPattern)}'`,
683
+ `document_language: '${escapeSingleQuotes(documentLanguage)}'`
679
684
  ];
680
685
  if (answers.pmTool === "jira") {
681
686
  const jira = answers.jira;
@@ -707,15 +712,10 @@ function createGlobalUserConfigYaml(answers) {
707
712
  answers.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
708
713
  "communication_language"
709
714
  );
710
- const documentLanguage = normalizeLanguageValue(
711
- answers.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
712
- "document_language"
713
- );
714
715
  return [
715
716
  `user_name: '${escapeSingleQuotes(userName)}'`,
716
717
  `idle_threshold_minutes: ${idleThresholdMinutes}`,
717
718
  `communication_language: '${escapeSingleQuotes(communicationLanguage)}'`,
718
- `document_language: '${escapeSingleQuotes(documentLanguage)}'`,
719
719
  ""
720
720
  ].join("\n");
721
721
  }
@@ -1180,7 +1180,7 @@ async function defaultCollectInitAnswers(context) {
1180
1180
  }
1181
1181
  const branchPatternAnswer = await (0, import_prompts3.text)({
1182
1182
  message: "Branch naming pattern:",
1183
- defaultValue: context.suggestedBranchPattern,
1183
+ initialValue: context.suggestedBranchPattern,
1184
1184
  placeholder: "feature/*",
1185
1185
  validate(value) {
1186
1186
  if (value.trim().length === 0) {
@@ -1215,9 +1215,8 @@ async function defaultCollectInitAnswers(context) {
1215
1215
  return null;
1216
1216
  }
1217
1217
  const communicationLanguageAnswer = await (0, import_prompts3.text)({
1218
- message: "Agent response language:",
1219
- defaultValue: context.existingConfig?.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
1220
- placeholder: "fr",
1218
+ message: "Agent response language (e.g. Fran\xE7ais, English, Espa\xF1ol):",
1219
+ initialValue: context.existingConfig?.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
1221
1220
  validate(value) {
1222
1221
  if (value.trim().length === 0) {
1223
1222
  return "Language cannot be empty.";
@@ -1230,9 +1229,8 @@ async function defaultCollectInitAnswers(context) {
1230
1229
  return null;
1231
1230
  }
1232
1231
  const documentLanguageAnswer = await (0, import_prompts3.text)({
1233
- message: "Document output language:",
1234
- defaultValue: context.existingConfig?.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
1235
- placeholder: "fr",
1232
+ message: "Document output language (e.g. Fran\xE7ais, English, Espa\xF1ol):",
1233
+ initialValue: context.existingConfig?.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
1236
1234
  validate(value) {
1237
1235
  if (value.trim().length === 0) {
1238
1236
  return "Language cannot be empty.";
@@ -1299,8 +1297,8 @@ var PROJECT_CONFIG_FILE = ".tiqora.yaml";
1299
1297
  var GLOBAL_CONFIG_FILE = ".tiqora/config.yaml";
1300
1298
  var MISSING_CONFIG_ERROR_MESSAGE = "\u2717 No .tiqora.yaml found. Run npx tiqora init first.";
1301
1299
  var DEFAULT_USER_NAME2 = "Developer";
1302
- var DEFAULT_COMMUNICATION_LANGUAGE2 = "fr";
1303
- var DEFAULT_DOCUMENT_LANGUAGE2 = "fr";
1300
+ var DEFAULT_COMMUNICATION_LANGUAGE2 = "Fran\xE7ais";
1301
+ var DEFAULT_DOCUMENT_LANGUAGE2 = "English";
1304
1302
  var REQUIRED_CONFIG_KEYS = [
1305
1303
  "pm_tool",
1306
1304
  "git_host",
package/dist/index.mjs CHANGED
@@ -671,8 +671,8 @@ import { homedir as homedir2 } from "os";
671
671
  import { resolve as resolve4 } from "path";
672
672
  var DEFAULT_IDLE_THRESHOLD_MINUTES = 15;
673
673
  var DEFAULT_USER_NAME = "Developer";
674
- var DEFAULT_COMMUNICATION_LANGUAGE = "fr";
675
- var DEFAULT_DOCUMENT_LANGUAGE = "fr";
674
+ var DEFAULT_COMMUNICATION_LANGUAGE = "Fran\xE7ais";
675
+ var DEFAULT_DOCUMENT_LANGUAGE = "English";
676
676
  var PROJECT_INIT_CONFIG_FILE = ".tiqora.yaml";
677
677
  var GLOBAL_USER_CONFIG_FILE = ".tiqora/config.yaml";
678
678
  function createProjectInitConfigYaml(answers) {
@@ -680,10 +680,15 @@ function createProjectInitConfigYaml(answers) {
680
680
  if (branchPattern.length === 0) {
681
681
  throw new Error("Branch pattern cannot be empty.");
682
682
  }
683
+ const documentLanguage = normalizeLanguageValue(
684
+ answers.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
685
+ "document_language"
686
+ );
683
687
  const lines = [
684
688
  `pm_tool: ${answers.pmTool}`,
685
689
  `git_host: ${answers.gitHost}`,
686
- `branch_pattern: '${escapeSingleQuotes(branchPattern)}'`
690
+ `branch_pattern: '${escapeSingleQuotes(branchPattern)}'`,
691
+ `document_language: '${escapeSingleQuotes(documentLanguage)}'`
687
692
  ];
688
693
  if (answers.pmTool === "jira") {
689
694
  const jira = answers.jira;
@@ -715,15 +720,10 @@ function createGlobalUserConfigYaml(answers) {
715
720
  answers.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
716
721
  "communication_language"
717
722
  );
718
- const documentLanguage = normalizeLanguageValue(
719
- answers.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
720
- "document_language"
721
- );
722
723
  return [
723
724
  `user_name: '${escapeSingleQuotes(userName)}'`,
724
725
  `idle_threshold_minutes: ${idleThresholdMinutes}`,
725
726
  `communication_language: '${escapeSingleQuotes(communicationLanguage)}'`,
726
- `document_language: '${escapeSingleQuotes(documentLanguage)}'`,
727
727
  ""
728
728
  ].join("\n");
729
729
  }
@@ -1194,7 +1194,7 @@ async function defaultCollectInitAnswers(context) {
1194
1194
  }
1195
1195
  const branchPatternAnswer = await text2({
1196
1196
  message: "Branch naming pattern:",
1197
- defaultValue: context.suggestedBranchPattern,
1197
+ initialValue: context.suggestedBranchPattern,
1198
1198
  placeholder: "feature/*",
1199
1199
  validate(value) {
1200
1200
  if (value.trim().length === 0) {
@@ -1229,9 +1229,8 @@ async function defaultCollectInitAnswers(context) {
1229
1229
  return null;
1230
1230
  }
1231
1231
  const communicationLanguageAnswer = await text2({
1232
- message: "Agent response language:",
1233
- defaultValue: context.existingConfig?.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
1234
- placeholder: "fr",
1232
+ message: "Agent response language (e.g. Fran\xE7ais, English, Espa\xF1ol):",
1233
+ initialValue: context.existingConfig?.communicationLanguage ?? DEFAULT_COMMUNICATION_LANGUAGE,
1235
1234
  validate(value) {
1236
1235
  if (value.trim().length === 0) {
1237
1236
  return "Language cannot be empty.";
@@ -1244,9 +1243,8 @@ async function defaultCollectInitAnswers(context) {
1244
1243
  return null;
1245
1244
  }
1246
1245
  const documentLanguageAnswer = await text2({
1247
- message: "Document output language:",
1248
- defaultValue: context.existingConfig?.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
1249
- placeholder: "fr",
1246
+ message: "Document output language (e.g. Fran\xE7ais, English, Espa\xF1ol):",
1247
+ initialValue: context.existingConfig?.documentLanguage ?? DEFAULT_DOCUMENT_LANGUAGE,
1250
1248
  validate(value) {
1251
1249
  if (value.trim().length === 0) {
1252
1250
  return "Language cannot be empty.";
@@ -1313,8 +1311,8 @@ var PROJECT_CONFIG_FILE = ".tiqora.yaml";
1313
1311
  var GLOBAL_CONFIG_FILE = ".tiqora/config.yaml";
1314
1312
  var MISSING_CONFIG_ERROR_MESSAGE = "\u2717 No .tiqora.yaml found. Run npx tiqora init first.";
1315
1313
  var DEFAULT_USER_NAME2 = "Developer";
1316
- var DEFAULT_COMMUNICATION_LANGUAGE2 = "fr";
1317
- var DEFAULT_DOCUMENT_LANGUAGE2 = "fr";
1314
+ var DEFAULT_COMMUNICATION_LANGUAGE2 = "Fran\xE7ais";
1315
+ var DEFAULT_DOCUMENT_LANGUAGE2 = "English";
1318
1316
  var REQUIRED_CONFIG_KEYS = [
1319
1317
  "pm_tool",
1320
1318
  "git_host",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tiqora/tiqora",
3
- "version": "0.0.3-dev",
3
+ "version": "0.0.5-dev",
4
4
  "description": "Agentic delivery CLI for solo devs: challenge tickets, orchestrate PM/SM/Dev flows, and keep execution synced.",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",