| name | ksrc |
| description | CLI for searching/reading Kotlin dependency sources from a Gradle project. Use when you need to locate a class/function in a library and inspect dependency source files. |
Quick start
- Search a module:
ksrc search org.jetbrains.kotlinx:kotlinx-datetime -q "class LocalDate" - Read a file by id:
ksrc cat org.jetbrains.kotlinx:kotlinx-datetime:0.6.1!/kotlinx/datetime/LocalDate.kt --lines 1,200
Commands
ksrc search [<module>] -q <pattern> [-- <rg-args>]
Search dependency sources.
Common flags:
--allsearch across all resolved deps (required if<module>omitted)<module>supports glob patterns (same as--module)--project <path>project root (default.)--subproject <name>limit to a subproject (repeatable)--targets <list>limit KMP targets (comma‑separated:jvm,android,iosX64)--config <name>resolve specific configuration(s) (comma‑separated)--scope <compile|runtime|test|all>--module <glob>module filter (group:artifact[:version])--group <glob>/--artifact <glob>/--version <glob>--offlineonly use cached sources--refreshforce dependency refresh--context <n>shortcut forrg -C <n>(context lines emit column0)--rg-args <args>extra rg args (comma‑separated)-- <rg-args>pass through raw rg args--show-extracted-pathinclude temp extracted paths in output (off by default)
Output format:
<file-id> <line>:<col>:<match> (use --show-extracted-path for temp paths)
ksrc cat <file-id|path>
Print file contents.
Common flags:
--lines <start,end>1‑based inclusive range--module <glob>/--group/--artifact/--versionto disambiguate when using a path
ksrc open <file-id|path>
Open in $PAGER (defaults to less -R). Same flags as cat.
ksrc deps
List resolved dependencies and source availability.
ksrc resolve
Resolve and print source JARs: group:artifact:version|/path/to/sources.jar.
ksrc fetch <coord>
Ensure sources for a coordinate exist: group:artifact:version.
ksrc where <path|coord>
Locate cached source JAR or file.
ksrc doctor
Basic diagnostics for environment issues.
File-id format
group:artifact:version!/path/inside/jar.kt
Common issues
E_NO_MODULE: provide<module>or pass--all.E_NO_SOURCES: dependency sources not available; tryksrc deps,ksrc fetch <coord>, or rerun without--offline.- Gradle not found: run in a Gradle project or set
--projectto the root. rgnot found: install ripgrep and ensure it’s on PATH.- Ambiguous modules: use
--module,--group, or--artifactto narrow.