@kimuson/claude-code-viewer 0.4.2-beta.2 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -2318,8 +2318,19 @@ var LayerImpl13 = Effect19.gen(function* () {
2318
2318
  setNextMessage(input);
2319
2319
  try {
2320
2320
  for await (const message of messageIter) {
2321
+ if (message.type === "system" && message.subtype === "hook_response") {
2322
+ continue;
2323
+ }
2324
+ if (message.type === "system" && message.subtype === "compact_boundary") {
2325
+ continue;
2326
+ }
2321
2327
  const result = await Runtime2.runPromise(runtime)(
2322
- handleMessage(message)
2328
+ handleMessage(
2329
+ message.type === "system" ? {
2330
+ ...message,
2331
+ plugins: []
2332
+ } : message
2333
+ )
2323
2334
  ).catch((error) => {
2324
2335
  Effect19.runFork(
2325
2336
  sessionProcessService.changeTaskState({
@@ -2824,7 +2835,7 @@ import { Context as Context22, Effect as Effect25, Layer as Layer23 } from "effe
2824
2835
  import { existsSync } from "node:fs";
2825
2836
  import { readdir } from "node:fs/promises";
2826
2837
  import { dirname as dirname2, join, resolve as resolve3 } from "node:path";
2827
- var getDirectoryListing = async (rootPath, basePath = "/") => {
2838
+ var getDirectoryListing = async (rootPath, basePath = "/", showHidden = false) => {
2828
2839
  const normalizedBasePath = basePath === "/" ? "" : basePath.startsWith("/") ? basePath.slice(1) : basePath;
2829
2840
  const targetPath = resolve3(rootPath, normalizedBasePath);
2830
2841
  if (!targetPath.startsWith(resolve3(rootPath))) {
@@ -2849,7 +2860,7 @@ var getDirectoryListing = async (rootPath, basePath = "/") => {
2849
2860
  });
2850
2861
  }
2851
2862
  for (const dirent of dirents) {
2852
- if (dirent.name.startsWith(".")) {
2863
+ if (!showHidden && dirent.name.startsWith(".")) {
2853
2864
  continue;
2854
2865
  }
2855
2866
  const entryPath = normalizedBasePath ? join(normalizedBasePath, dirent.name) : dirent.name;
@@ -2980,13 +2991,17 @@ var LayerImpl17 = Effect25.gen(function* () {
2980
2991
  }
2981
2992
  });
2982
2993
  const getDirectoryListingRoute = (options) => Effect25.promise(async () => {
2983
- const { currentPath } = options;
2994
+ const { currentPath, showHidden = false } = options;
2984
2995
  const rootPath = "/";
2985
2996
  const defaultPath = homedir3();
2986
2997
  try {
2987
2998
  const targetPath = currentPath ?? defaultPath;
2988
2999
  const relativePath = targetPath.startsWith(rootPath) ? targetPath.slice(rootPath.length) : targetPath;
2989
- const result = await getDirectoryListing(rootPath, relativePath);
3000
+ const result = await getDirectoryListing(
3001
+ rootPath,
3002
+ relativePath,
3003
+ showHidden
3004
+ );
2990
3005
  return {
2991
3006
  response: result,
2992
3007
  status: 200
@@ -3901,6 +3916,7 @@ var GitController = class extends Context24.Tag("GitController")() {
3901
3916
  };
3902
3917
 
3903
3918
  // src/server/core/project/presentation/ProjectController.ts
3919
+ import { FileSystem as FileSystem8, Path as Path11 } from "@effect/platform";
3904
3920
  import { Context as Context25, Effect as Effect29, Layer as Layer26 } from "effect";
3905
3921
 
3906
3922
  // src/server/core/claude-code/functions/computeClaudeProjectFilePath.ts
@@ -3922,6 +3938,8 @@ var LayerImpl20 = Effect29.gen(function* () {
3922
3938
  const userConfigService = yield* UserConfigService;
3923
3939
  const sessionRepository = yield* SessionRepository;
3924
3940
  const context = yield* ApplicationContext;
3941
+ const fileSystem = yield* FileSystem8.FileSystem;
3942
+ const path = yield* Path11.Path;
3925
3943
  const getProjects = () => Effect29.gen(function* () {
3926
3944
  const { projects } = yield* projectRepository.getProjects();
3927
3945
  return {
@@ -4003,6 +4021,8 @@ var LayerImpl20 = Effect29.gen(function* () {
4003
4021
  });
4004
4022
  const projectId = encodeProjectId(claudeProjectFilePath);
4005
4023
  const userConfig = yield* userConfigService.getUserConfig();
4024
+ const claudeMdPath = path.join(projectPath, "CLAUDE.md");
4025
+ const claudeMdExists = yield* fileSystem.exists(claudeMdPath);
4006
4026
  const result = yield* claudeCodeLifeCycleService.startTask({
4007
4027
  baseSession: {
4008
4028
  cwd: projectPath,
@@ -4011,7 +4031,7 @@ var LayerImpl20 = Effect29.gen(function* () {
4011
4031
  },
4012
4032
  userConfig,
4013
4033
  input: {
4014
- text: "/init"
4034
+ text: claudeMdExists ? "describe this project" : "/init"
4015
4035
  }
4016
4036
  });
4017
4037
  const { sessionId } = yield* result.yieldSessionFileCreated();
@@ -4038,7 +4058,7 @@ var ProjectController = class extends Context25.Tag("ProjectController")() {
4038
4058
 
4039
4059
  // src/server/core/scheduler/config.ts
4040
4060
  import { homedir as homedir4 } from "node:os";
4041
- import { FileSystem as FileSystem8, Path as Path11 } from "@effect/platform";
4061
+ import { FileSystem as FileSystem9, Path as Path12 } from "@effect/platform";
4042
4062
  import { Context as Context26, Data as Data5, Effect as Effect30, Layer as Layer27 } from "effect";
4043
4063
 
4044
4064
  // src/server/core/scheduler/schema.ts
@@ -4108,12 +4128,12 @@ var SchedulerConfigBaseDir = class extends Context26.Tag(
4108
4128
  }
4109
4129
  };
4110
4130
  var getConfigPath = Effect30.gen(function* () {
4111
- const path = yield* Path11.Path;
4131
+ const path = yield* Path12.Path;
4112
4132
  const baseDir = yield* SchedulerConfigBaseDir;
4113
4133
  return path.join(baseDir, CONFIG_DIR, CONFIG_FILE);
4114
4134
  });
4115
4135
  var readConfig = Effect30.gen(function* () {
4116
- const fs = yield* FileSystem8.FileSystem;
4136
+ const fs = yield* FileSystem9.FileSystem;
4117
4137
  const configPath = yield* getConfigPath;
4118
4138
  const exists = yield* fs.exists(configPath);
4119
4139
  if (!exists) {
@@ -4141,8 +4161,8 @@ var readConfig = Effect30.gen(function* () {
4141
4161
  return parsed.data;
4142
4162
  });
4143
4163
  var writeConfig = (config) => Effect30.gen(function* () {
4144
- const fs = yield* FileSystem8.FileSystem;
4145
- const path = yield* Path11.Path;
4164
+ const fs = yield* FileSystem9.FileSystem;
4165
+ const path = yield* Path12.Path;
4146
4166
  const configPath = yield* getConfigPath;
4147
4167
  const configDir = path.dirname(configPath);
4148
4168
  yield* fs.makeDirectory(configDir, { recursive: true });
@@ -4665,7 +4685,7 @@ import { z as z27 } from "zod";
4665
4685
  // package.json
4666
4686
  var package_default = {
4667
4687
  name: "@kimuson/claude-code-viewer",
4668
- version: "0.4.2-beta.1",
4688
+ version: "0.4.2-beta.2",
4669
4689
  type: "module",
4670
4690
  license: "MIT",
4671
4691
  repository: {
@@ -4741,6 +4761,7 @@ var package_default = {
4741
4761
  react: "19.2.0",
4742
4762
  "react-dom": "19.2.0",
4743
4763
  "react-error-boundary": "6.0.0",
4764
+ "react-helmet-async": "^2.0.5",
4744
4765
  "react-markdown": "10.1.0",
4745
4766
  "react-syntax-highlighter": "15.6.6",
4746
4767
  "remark-gfm": "4.0.1",
@@ -5303,7 +5324,8 @@ var routes = (app) => Effect37.gen(function* () {
5303
5324
  zValidator(
5304
5325
  "query",
5305
5326
  z27.object({
5306
- currentPath: z27.string().optional()
5327
+ currentPath: z27.string().optional(),
5328
+ showHidden: z27.string().optional().transform((val) => val === "true")
5307
5329
  })
5308
5330
  ),
5309
5331
  async (c) => {