diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..84c183fd
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,6 @@
+[submodule "submodules/functions"]
+	path = submodules/functions
+	url = https://github.com/sigoden/llm-functions
+[submodule "submodules/.config/aichat/functions"]
+	path = submodules/.config/aichat/functions
+	url = https://github.com/sigoden/llm-functions
diff --git a/submodules/.config/aichat/functions b/submodules/.config/aichat/functions
new file mode 160000
index 00000000..5cd7e71a
--- /dev/null
+++ b/submodules/.config/aichat/functions
@@ -0,0 +1 @@
+Subproject commit 5cd7e71a13b64661bff32a4f0166dcfdef07993d