diff --git a/docs/getting-started/index.rst b/docs/getting-started/index.rst
index 370cc25b1c..d3089b49c7 100644
--- a/docs/getting-started/index.rst
+++ b/docs/getting-started/index.rst
@@ -59,4 +59,5 @@ Getting Started
* `Build an IoT App with sensor simulator and a REST API `_ - ScyllaDB Tutorial
* `Implement CRUD operations with a TODO App `_ - ScyllaDB Cloud Tutorial
- * `Build a machine learning (ML) feature store with ScyllaDB `_ - ScyllaDB Cloud Tutorial ` <>`_
+ * `Build a machine learning (ML) feature store with ScyllaDB `_ - ScyllaDB Cloud Tutorial
+
\ No newline at end of file
diff --git a/docs/kb/consistency.rst b/docs/kb/consistency.rst
index edd8990a06..576f0ce4ec 100644
--- a/docs/kb/consistency.rst
+++ b/docs/kb/consistency.rst
@@ -83,7 +83,7 @@ Additional References
* `Jepsen and ScyllaDB: Putting Consistency to the Test blog post `_
* `Nauto: Achieving Consistency in an Eventually Consistent Environment blog post `_
-* `Consistency Levels documentation `_
+* :doc:`Consistency Levels documentation `
* `High Availability lesson on ScyllaDB University `_
* `Lightweight Transactions lesson on ScyllaDB University `_
* `Getting the Most out of Lightweight Transactions in ScyllaDB blog post `_
diff --git a/docs/kb/tombstones-flush.rst b/docs/kb/tombstones-flush.rst
index 7c56ad2e6c..e860655bb5 100644
--- a/docs/kb/tombstones-flush.rst
+++ b/docs/kb/tombstones-flush.rst
@@ -38,7 +38,7 @@ Steps:
4. Run compaction (this will remove big partitions with tombstones from specified table)
-.. note:: By default, major compaction runs on all the keyspaces and tables, so if we want to specyfy e.g. only one table, we should point at it using arguments: ``.``. For more information, please refer to `this article `_.
+.. note:: By default, major compaction runs on all the keyspaces and tables, so if we want to specyfy e.g. only one table, we should point at it using arguments: ``.``. For more information, please see :doc:`Nodetool compact `.
.. code-block:: sh
diff --git a/docs/operating-scylla/admin-tools/scylla-sstable.rst b/docs/operating-scylla/admin-tools/scylla-sstable.rst
index e0a9e1b9ed..7f7276963d 100644
--- a/docs/operating-scylla/admin-tools/scylla-sstable.rst
+++ b/docs/operating-scylla/admin-tools/scylla-sstable.rst
@@ -1346,7 +1346,7 @@ You can find example scripts at https://github.com/scylladb/scylladb/tree/master
upgrade
^^^^^^^
-Offline, scylla-sstable variant of `nodetool upgradesstables `_.
+Offline, scylla-sstable variant of :doc:`nodetool upgradesstables `.
Rewrites the input SSTable(s) to the latest supported version and latest schema version.
The SSTable version to be used can be overridden with the ``--version`` flag, allowing for switching sstables between all versions supported for writing (some SSTable versions are supported for reading only).
diff --git a/docs/operating-scylla/diagnostics.rst b/docs/operating-scylla/diagnostics.rst
index 7b1d2ac2e8..638d6f7f5d 100644
--- a/docs/operating-scylla/diagnostics.rst
+++ b/docs/operating-scylla/diagnostics.rst
@@ -11,7 +11,7 @@ Logs
The most obvious source of information to find out more about why ScyllaDB is misbehaving.
On production systems, ScyllaDB logs to syslog; thus logs can usually be viewed via ``journalctl``.
-See `Logging `_ on more information on how to access the logs.
+See :doc:`Logging ` on more information on how to access the logs.
ScyllaDB has the following log levels: ``trace``, ``debug``, ``info``, ``warn``, ``error``.
@@ -64,21 +64,21 @@ Tracing
Tracing allows you to retrieve the internal log of events happening in the context of a single query.
Therefore, tracing is only useful to diagnose problems related to a certain query and cannot be used to diagnose generic problems.
That said, when it comes to diagnosing problems with a certain query, tracing is an excellent tool, allowing you to have a peek at what happens when that query is processed, including the timestamp of each event.
-For more details, see `Tracing `_.
+For more details, see :doc:`Tracing `.
Nodetool
--------
Although ``nodetool`` is primarily an administration tool, it has various commands that retrieve and display useful information about the state of a certain ScyllaDB node.
Look for commands with "stats", "info", "describe", "get", "histogram" in their names.
-For a comprehensive list of all available nodetool commands, see the `Nodetool Reference `_.
+For a comprehensive list of all available nodetool commands, see the :doc:`Nodetool Reference `.
REST API
--------
ScyllaDB has a REST API which is a superset of all ``nodetool`` commands, in the sense that it is the backend serving all of them.
It has many more endpoints, many of which can supply valuable information about the internal state of ScyllaDB.
-For more information, see `REST API `_.
+For more information, see :doc:`REST API `.
System Tables
-------------
@@ -102,9 +102,9 @@ Other Tools
ScyllaDB has various other tools, mainly to work with sstables.
If you are diagnosing a problem that is related to sstables misbehaving or being corrupt, you may find these useful:
-* `sstabledump `_
-* `ScyllaDB SStable `_
-* `ScyllaDB Types `_
+* :doc:`sstabledump `
+* :doc:`ScyllaDB SStable `
+* :doc:`ScyllaDB Types `
GDB
---