They had about half of Tails' AI. They circled you and whenever they got to a certain point in the circle (in front of you) and an enemy was within a small range and another bird was not out attacking it already, they would fly over to it, and the moment they touched it they would damage it and start flying back. If they weren't trying to attack it, it wouldn't take damage from touching them, and they can go through walls and crap to get at whatever they want (though I think there may have been some code to check that the path was clear beforehand).
Tails, however, did what my JTEBots do (with most options disabled), jumps if you're standing above it's head, runs if you're too far ahead/behind, and respawns if too far offscreen... (Though JTEBots wait for you to be going slow enough directions so it doesn't respawn repeatedly and fly if you're too high above to jump to, of course...)
I only say Tails is more advanced because he, like, has to jump and stuff. While the flickys just fly through walls in a straight line at whatever they're attacking.