From 144c68ae14c3c67b4a28e6928ee85cc0ef4e85af Mon Sep 17 00:00:00 2001 From: Marco Walz Date: Wed, 13 May 2026 13:56:44 +0200 Subject: [PATCH 1/3] infra: move developer-tools from references/ to its own top-level section Gives the page a URL (/developer-tools) that matches its navigational role as a toolchain discovery page rather than a spec lookup reference. Also creates room for sub-pages (icp-cli overview, etc.) under the same slug. --- .../{references/developer-tools.md => developer-tools/index.md} | 0 docs/guides/ai-coding-agents.md | 2 +- docs/guides/canister-calls/calling-from-clients.md | 2 +- docs/references/index.md | 2 +- sidebar.mjs | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) rename docs/{references/developer-tools.md => developer-tools/index.md} (100%) diff --git a/docs/references/developer-tools.md b/docs/developer-tools/index.md similarity index 100% rename from docs/references/developer-tools.md rename to docs/developer-tools/index.md diff --git a/docs/guides/ai-coding-agents.md b/docs/guides/ai-coding-agents.md index 7b458ca..12a3b8e 100644 --- a/docs/guides/ai-coding-agents.md +++ b/docs/guides/ai-coding-agents.md @@ -96,7 +96,7 @@ ICP skills are available without authentication: ## Next steps - [skills.internetcomputer.org](https://skills.internetcomputer.org): browse all available ICP skills -- [Developer tools](../references/developer-tools.md): icp-cli, CDKs, and other tools in the ICP toolchain +- [Developer tools](../developer-tools/index.md): icp-cli, CDKs, and other tools in the ICP toolchain - [Quickstart](../getting-started/quickstart.md): deploy your first canister with icp-cli diff --git a/docs/guides/canister-calls/calling-from-clients.md b/docs/guides/canister-calls/calling-from-clients.md index 0d4888b..3341c3f 100644 --- a/docs/guides/canister-calls/calling-from-clients.md +++ b/docs/guides/canister-calls/calling-from-clients.md @@ -61,7 +61,7 @@ Crate documentation: [docs.rs/ic-agent](https://docs.rs/ic-agent/latest/ic_agent ### Community agents -Community-maintained agents are available for Go, Java/Android, Dart/Flutter, .NET, Elixir, and C. See [Developer Tools](../../references/developer-tools.md#other-languages) for the full list. +Community-maintained agents are available for Go, Java/Android, Dart/Flutter, .NET, Elixir, and C. See [Developer Tools](../../developer-tools/index.md#other-languages) for the full list. ## JavaScript / TypeScript: using the agent diff --git a/docs/references/index.md b/docs/references/index.md index 8f14cd4..4ee3cac 100644 --- a/docs/references/index.md +++ b/docs/references/index.md @@ -9,7 +9,7 @@ Technical reference material for ICP development. These pages cover exact specif ## Tools -- **[Developer Tools](developer-tools.md)**: icp-cli, CDKs, JS SDK, PocketIC, ICP Ninja, and other toolchain components. +- **[Developer Tools](../developer-tools/index.md)**: icp-cli, CDKs, JS SDK, PocketIC, ICP Ninja, and other toolchain components. ## Canisters diff --git a/sidebar.mjs b/sidebar.mjs index 87d017a..77b147d 100644 --- a/sidebar.mjs +++ b/sidebar.mjs @@ -190,7 +190,7 @@ export const sidebar = [ }, ], }, - { slug: "references/developer-tools", label: "Developer tools" }, + { slug: "developer-tools", label: "Developer tools" }, { label: "References", collapsed: true, From fdae0ccc8310b185752716b1d59b44b8bba6fc9f Mon Sep 17 00:00:00 2001 From: Marco Walz Date: Wed, 13 May 2026 14:00:01 +0200 Subject: [PATCH 2/3] infra: remove developer-tools cross-link from references index --- docs/references/index.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/references/index.md b/docs/references/index.md index 4ee3cac..388fedd 100644 --- a/docs/references/index.md +++ b/docs/references/index.md @@ -7,10 +7,6 @@ sidebar: Technical reference material for ICP development. These pages cover exact specifications, canister IDs, costs, and error codes. -## Tools - -- **[Developer Tools](../developer-tools/index.md)**: icp-cli, CDKs, JS SDK, PocketIC, ICP Ninja, and other toolchain components. - ## Canisters - **[Management Canister](management-canister.md)**: API reference for the IC management canister (`aaaaa-aa`): canister lifecycle, signing, randomness, and more. From 197dae0e3b38c0d91686b678ed9a61935063c8d4 Mon Sep 17 00:00:00 2001 From: Marco Walz Date: Mon, 18 May 2026 10:34:17 +0200 Subject: [PATCH 3/3] fix(infra): update developer-tools links in security guide after move References to `references/developer-tools.md` in the security guide were not updated when the file moved to `developer-tools/index.md`. --- docs/guides/security/identity-and-access-management.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/guides/security/identity-and-access-management.mdx b/docs/guides/security/identity-and-access-management.mdx index c696d87..4cbf20d 100644 --- a/docs/guides/security/identity-and-access-management.mdx +++ b/docs/guides/security/identity-and-access-management.mdx @@ -79,7 +79,7 @@ Implementing user authentication and canister calls yourself in your web app is ### Recommendation -- Consider using an identity provider such as [Internet Identity](https://github.com/dfinity/internet-identity) for authentication, and use the [ICP JavaScript agent](../../references/developer-tools.md#javascript--typescript) for making canister calls. +- Consider using an identity provider such as [Internet Identity](https://github.com/dfinity/internet-identity) for authentication, and use the [ICP JavaScript agent](../../developer-tools/index.md#javascript--typescript) for making canister calls. - You may consider alternative authentication frameworks on ICP for authentication. @@ -99,7 +99,7 @@ The auth-client supports [idle timeouts](https://js.icp.build/auth/latest/api/cl ### Security concern -`agent.fetchRootKey()` can be used in the [ICP JavaScript agent](../../references/developer-tools.md#javascript--typescript) to fetch the root subnet threshold public key from a status call in test environments. This key is used to verify threshold signatures on certified data received through canister update calls. Using this method in a production web app gives an attacker the option to supply their own public key, invalidating all authenticity guarantees of update responses. +`agent.fetchRootKey()` can be used in the [ICP JavaScript agent](../../developer-tools/index.md#javascript--typescript) to fetch the root subnet threshold public key from a status call in test environments. This key is used to verify threshold signatures on certified data received through canister update calls. Using this method in a production web app gives an attacker the option to supply their own public key, invalidating all authenticity guarantees of update responses. ### Recommendation