diff --git a/src/SPC/command/dev/AllExtCommand.php b/src/SPC/command/dev/AllExtCommand.php
new file mode 100644
index 00000000..253e1d79
--- /dev/null
+++ b/src/SPC/command/dev/AllExtCommand.php
@@ -0,0 +1,24 @@
+output->writeln(implode(',', array_keys(Config::getExts())));
+
+ return 0;
+ }
+}
diff --git a/src/SPC/command/dev/ExtInfoCommand.php b/src/SPC/command/dev/ExtInfoCommand.php
new file mode 100644
index 00000000..d45478c8
--- /dev/null
+++ b/src/SPC/command/dev/ExtInfoCommand.php
@@ -0,0 +1,43 @@
+addArgument('extensions', InputArgument::REQUIRED, 'The extension name you need to get info');
+ }
+
+ public function handle(): int
+ {
+ $extensions = array_map('trim', array_filter(explode(',', $this->getArgument('extensions'))));
+
+ // 根据提供的扩展列表获取依赖库列表并编译
+ foreach ($extensions as $extension) {
+ $this->output->writeln('[ ' . $extension . ' ]');
+ [, $libraries, $not_included] = DependencyUtil::getExtLibsByDeps([$extension]);
+ $lib_suggests = Config::getExt($extension, 'lib-suggests', []);
+ $ext_suggests = Config::getExt($extension, 'ext-suggests', []);
+ $this->output->writeln("lib-depends:\t" . implode(', ', $libraries) . '');
+ $this->output->writeln("lib-suggests:\t" . implode(', ', $lib_suggests) . '');
+ $this->output->writeln("ext-depends:\t" . implode(',', $not_included) . '');
+ $this->output->writeln("ext-suggests:\t" . implode(', ', $ext_suggests) . '');
+ if (Config::getExt($extension, 'unix-only', false)) {
+ $this->output->writeln("Unix only:\ttrue");
+ }
+ $this->output->writeln('');
+ }
+
+ return 0;
+ }
+}