is there a way that i can declare gpio6 (CLK) as an input without getting a wdt reset? I'm somewhat new to circuitry, but my boss wants to use it(GPIO6) to talk with external devices. I have more pictures of the schematics if you think that it would help.
No. There is no way you can use it (or not without a lot of messing around...).
According to the ESP8266 GPIO Reference Guide:
GPIO6 to GPIO11 are usually connected to the flash chip in ESP8266 boards. So, these pins are not recommended to use.
If you mess with those pins you won't be able to access the flash chip - and that means that you can't run code. And of course that means that the watchdog then times out.
I say that you can't "without a lot of messing around", because theoretically it could be possible if you had a function resident in RAM which reconfigured the pins, then did whatever was needed with them (taking into account the fact that there's a flash chip connected there...), then afterwards reconfigure the pins back to working in XIP SPI Flash mode. But that's not something I would like to even contemplate doing.
No you can't. Refer to this: https://tttapa.github.io/ESP8266/Chap04%20-%20Microcontroller.html
However as that article states there is a dedicated SPI set of pins on the esp8266 so you should be able to use that?
From your circuit diagram I see this might not be an option for you as you seem to have most of the pins allocated to a different function.
Your best and most robust solution would probably be to have a separate microcontroller chip handling your I2C and SPI requirements, using the Esp8266 UART functionally to provide your wireless capabilities.
As a side note why do you have so many clock lines?