Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
9ff4be1
feat(insight): add insight command and server for personalized progra…
DragonnZhang Jan 16, 2026
22aa665
feat: add new insight page with Vite setup
DragonnZhang Jan 16, 2026
18a2154
refactor(insight): update insight page assets and styles
DragonnZhang Jan 16, 2026
0e55800
feat(insight): Implement static insight generation and visualization
DragonnZhang Jan 23, 2026
c243f1d
chore: update ESLint configuration and lint-staged command
DragonnZhang Jan 23, 2026
733522c
refactor(insight): remove deprecated insight server implementation
DragonnZhang Jan 23, 2026
2931e75
refactor(insight): remove debug logging and unused test generator
DragonnZhang Jan 23, 2026
6cb0bb0
feat(insight): update insight template and app to React, enhance expo…
DragonnZhang Jan 23, 2026
7b845ea
refactor(insight): improve error handling and format output path message
DragonnZhang Jan 23, 2026
338387f
feat(insight): integrate JSONL file reading utility and enhance base …
DragonnZhang Jan 23, 2026
7e21ba4
feat(insight): enhance template loading logic and add insight templat…
DragonnZhang Feb 2, 2026
98735fe
feat(insight): add JSONL utility exports to index
DragonnZhang Feb 5, 2026
39d2067
feat(insight): update static insight generator and command handling
DragonnZhang Feb 5, 2026
f1214c9
feat(insight): remove JSON data file generation from static insight p…
DragonnZhang Feb 5, 2026
5a7dcce
feat(insight): refactor data processing and add qualitative insights …
DragonnZhang Feb 5, 2026
9ea6c45
feat(insight): add qualitative insights components and styles to enha…
DragonnZhang Feb 5, 2026
aeedec3
feat(insight): enhance qualitative insights display and improve styling
DragonnZhang Feb 6, 2026
754125e
feat(insight): add tracking for lines and files in analysis and enhan…
DragonnZhang Feb 6, 2026
f57e261
feat(insight): remove Token Usage and Achievements from report
DragonnZhang Feb 6, 2026
afe911d
feat(insight): add new components for insights display and enhance st…
DragonnZhang Feb 6, 2026
20de2a0
feat(insight): add satisfaction and friction data aggregation and dis…
DragonnZhang Feb 9, 2026
0dc3594
feat(insight): add progress tracking for insight generation and displ…
DragonnZhang Feb 9, 2026
fa8d596
feat(insight): enhance metrics generation with progress tracking and …
DragonnZhang Feb 9, 2026
4c32f4b
feat(insight): remove Team Feedback link from navigation
DragonnZhang Feb 9, 2026
af21e7f
feat: enhance InsightPrompts and components with additional data hand…
DragonnZhang Feb 9, 2026
2edce46
feat(insight): refactor InteractionStyle to include insights and upda…
DragonnZhang Feb 9, 2026
e66c203
feat(insight): Refactor code structure for improved readability and m…
DragonnZhang Feb 9, 2026
4b95854
refactor(insightCommand): replace console.error with logger for bette…
DragonnZhang Feb 9, 2026
dd56345
fix: handle special case for merging function calls with args and names
DragonnZhang Feb 10, 2026
e29aab4
feat(DataProcessor): use constant for concurrency limit in pLimit calls
DragonnZhang Feb 10, 2026
2a432b1
revert: remove unused script modifications
DragonnZhang Feb 10, 2026
fcb22a3
feat(insightCommand): simplify file opening by using 'open' package
DragonnZhang Feb 10, 2026
89cc55f
feat(DataProcessor): add comprehensive test suite for DataProcessor f…
DragonnZhang Feb 10, 2026
d61ec77
Refactor code structure for improved readability and maintainability
DragonnZhang Feb 10, 2026
83dc4ca
feat(insight): add shareable card and dev environment support
DragonnZhang Feb 11, 2026
2421bb1
feat(insight): refactor prompts and integrate dynamic prompt retrieval
DragonnZhang Feb 11, 2026
c948e0c
fix(insight): only analyze conversational sessions for facets
tanzhenxin Feb 26, 2026
f47bef1
fix(insight): count only user interactions in metrics
tanzhenxin Feb 26, 2026
eea5daa
feat(insight): polish insight page UI
tanzhenxin Feb 26, 2026
509260d
feat(cli): add timestamped filenames for insight reports
tanzhenxin Feb 26, 2026
5926b37
feat(cli): Refine insight progress indicator UI
tanzhenxin Feb 26, 2026
9e4c5ee
refactor: Extract web-templates package and unify build/pack workflow
tanzhenxin Feb 26, 2026
a172696
Merge branch 'main' into feat/support-insight-command
tanzhenxin Feb 26, 2026
6258ee5
chore: Fix lint errors in web-templates package
tanzhenxin Feb 26, 2026
7cbebe9
Merge branch 'main' into feat/support-insight-command
tanzhenxin Feb 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# Dependencies (npm ci installs fresh inside the container)
node_modules
**/node_modules

# Build artifacts (rebuilt from scratch inside the container)
dist
**/dist

# Version control
.git
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ packages/*/coverage/
# Generated files
packages/cli/src/generated/
packages/core/src/generated/
packages/web-templates/src/generated/
.integration-tests/
packages/vscode-ide-companion/*.vsix

Expand Down
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,4 @@ eslint.config.js
gha-creds-*.json
junit.xml
Thumbs.db
packages/cli/src/services/insight/templates/insightTemplate.ts
13 changes: 6 additions & 7 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,12 @@ ENV PATH=$PATH:/usr/local/share/npm-global/bin
COPY . /home/node/app
WORKDIR /home/node/app

# Install dependencies and build packages
# Use scripts/build.js which handles workspace dependencies in correct order
# Install dependencies, build workspaces, bundle into a single distributable, and pack
RUN npm ci \
&& npm run build \
&& npm pack -w @qwen-code/qwen-code --pack-destination ./packages/cli/dist \
&& npm pack -w @qwen-code/qwen-code-core --pack-destination ./packages/core/dist
&& npm run bundle \
&& npm run prepare:package \
&& cd dist && npm pack

# Runtime stage
FROM docker.io/library/node:20-slim
Expand Down Expand Up @@ -61,9 +61,8 @@ RUN mkdir -p /usr/local/share/npm-global
ENV NPM_CONFIG_PREFIX=/usr/local/share/npm-global
ENV PATH=$PATH:/usr/local/share/npm-global/bin

# Copy built packages from builder stage
COPY --from=builder /home/node/app/packages/cli/dist/*.tgz /tmp/
COPY --from=builder /home/node/app/packages/core/dist/*.tgz /tmp/
# Copy bundled package from builder stage
COPY --from=builder /home/node/app/dist/*.tgz /tmp/

# Install built packages globally
RUN npm install -g /tmp/*.tgz \
Expand Down
9 changes: 7 additions & 2 deletions eslint.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -254,9 +254,12 @@ export default tseslint.config(
'no-console': 'off',
},
},
// Settings for export-html assets
// Settings for web-templates assets
{
files: ['packages/cli/assets/export-html/**/*.{js,jsx,ts,tsx}'],
files: [
'packages/web-templates/src/**/*.{js,jsx,ts,tsx}',
'packages/web-templates/*.mjs',
],
languageOptions: {
globals: {
...globals.browser,
Expand All @@ -271,6 +274,8 @@ export default tseslint.config(
rules: {
'react/react-in-jsx-scope': 'off',
'react/prop-types': 'off',
'no-console': 'off',
'no-undef': 'off',
},
},
// Prettier config must be last
Expand Down
4 changes: 2 additions & 2 deletions integration-tests/terminal-capture/terminal-capture.ts
Original file line number Diff line number Diff line change
Expand Up @@ -293,7 +293,7 @@ export class TerminalCapture {
await this.page.addScriptTag({ path: join(xtermDir, 'lib', 'xterm.js') });

// 4. Create xterm Terminal instance inside the page

await this.page.evaluate(
({ cols, rows, theme, fontSize, fontFamily }) => {
const W = window as unknown as Record<string, unknown>;
Expand All @@ -312,7 +312,7 @@ export class TerminalCapture {
});

const container = document.getElementById('xterm-container')!;

term.open(container);

// Expose to outer scope
Expand Down
Loading