diff --git a/docs/sdk/services/workflow.md b/docs/sdk/services/workflow.md index 934a52e..1e98dab 100644 --- a/docs/sdk/services/workflow.md +++ b/docs/sdk/services/workflow.md @@ -12,7 +12,7 @@ Workflows provide: - Access to TailorDB via Kysely query builder - Job triggering to compose multi-step logic -For the official Tailor Platform documentation, see [Workflow Guide](/guides/workflow). +For the official Tailor Platform documentation, see [Workflow Guide](/guides/workflow/). ## Workflow Rules diff --git a/scripts/docs-sync/main.ts b/scripts/docs-sync/main.ts index e14c067..4d5491b 100644 --- a/scripts/docs-sync/main.ts +++ b/scripts/docs-sync/main.ts @@ -12,6 +12,7 @@ interface SyncConfig { } const ROOT = process.cwd(); +const DOCS_ROOT = path.resolve(ROOT, "../../docs"); const configs: Record = { sdk: { @@ -150,7 +151,10 @@ walk(config.dst) .filter((f) => f.endsWith(".md")) .forEach((f) => { let content = fs.readFileSync(f, "utf8"); - content = content.replace(/\(https:\/\/docs\.tailor\.tech(\/[^)]*)\)/g, "($1)"); + content = content.replace(/\(https:\/\/docs\.tailor\.tech(\/[^)]*)\)/g, (_: string, urlPath: string) => { + const hasIndex = fs.existsSync(path.join(DOCS_ROOT, urlPath, "index.md")); + return hasIndex ? `(${urlPath}/)` : `(${urlPath})`; + }); content = content.replace(/\(\.\//g, "("); content = content.replace(/\/index\.md\)/g, "/)"); content = content.replace(/\.md\)/g, ")");